https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93553
--- Comment #7 from Tobias Burnus <burnus at gcc dot gnu.org> --- The variable ("D.3940") is produced via the following route. Contrary to variables processed in gimplify.c, which use /* When within an OMP context, notice uses of variables. */ if (gimplify_omp_ctxp && omp_notice_variable (gimplify_omp_ctxp, decl, true)) ... This variable does not get recorded – and, hence, it fails as shown in the previous comment 6. #0 create_tmp_var_raw (type=type@entry=0x7ffff78c5d20, prefix=prefix@entry=0x0) at ../../repos/gcc/gcc/gimple-expr.c:449 #1 0x0000000000f274f6 in create_tmp_var_for (info=info@entry=0x266f870, type=0x7ffff78c5d20, prefix=prefix@entry=0x0) at ../../repos/gcc/gcc/tree-nested.c:160 #2 0x0000000000f2828d in init_tmp_var (info=info@entry=0x266f870, exp=exp@entry=0x7ffff78d45a0, gsi=gsi@entry=0x7fffffffd540) at ../../repos/gcc/gcc/tree-nested.c:462 #3 0x0000000000f2f1d4 in convert_nonlocal_reference_op (tp=tp@entry=0x7ffff78cc608, walk_subtrees=walk_subtrees@entry=0x7fffffffd134, data=data@entry=0x7fffffffd540) at ../../repos/gcc/gcc/tree-nested.c:1081 #4 0x000000000114e262 in walk_tree_1 (tp=0x7ffff78cc608, func=func@entry=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, data=data@entry=0x7fffffffd540, pset=pset@entry=0x0, lh=lh@entry=0x0) at ../../repos/gcc/gcc/tree.c:11960 #5 0x000000000114f942 in walk_tree_1 (tp=tp@entry=0x7ffff7700478, func=func@entry=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, data=data@entry=0x7fffffffd540, pset=pset@entry=0x0, lh=lh@entry=0x0) at ../../repos/gcc/gcc/tree.c:12296 #6 0x0000000000f2f4fd in convert_nonlocal_reference_op (tp=0x7ffff7700478, tp@entry=0x7ffff78cd130, walk_subtrees=walk_subtrees@entry=0x7fffffffd354, data=data@entry=0x7fffffffd540) at ../../repos/gcc/gcc/tree-nested.c:1156 #7 0x000000000114e262 in walk_tree_1 (tp=0x7ffff78cd130, func=func@entry=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, data=data@entry=0x7fffffffd540, pset=pset@entry=0x0, lh=lh@entry=0x0) at ../../repos/gcc/gcc/tree.c:11960 #8 0x0000000000b7981a in walk_gimple_op (stmt=0x7ffff78cd0f0, callback_op=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, wi=0x7fffffffd540) at ../../repos/gcc/gcc/gimple.h:2492 #9 0x0000000000b79a6d in walk_gimple_stmt (gsi=0x7fffffffd460, callback_stmt=0xf30aa0 <convert_nonlocal_reference_stmt(gimple_stmt_iterator*, bool*, walk_stmt_info*)>, callback_op=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, wi=0x7fffffffd540) at ../../repos/gcc/gcc/gimple-walk.c:596 #10 0x0000000000b79c01 in walk_gimple_seq_mod (pseq=<optimized out>, callback_stmt=0xf30aa0 <convert_nonlocal_reference_stmt(gimple_stmt_iterator*, bool*, walk_stmt_info*)>, callback_op=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, wi=0x7fffffffd540) at ../../repos/gcc/gcc/gimple-walk.c:51 #11 0x0000000000b79af2 in walk_gimple_stmt (gsi=0x7fffffffd4e0, callback_stmt=0xf30aa0 <convert_nonlocal_reference_stmt(gimple_stmt_iterator*, bool*, walk_stmt_info*)>, callback_op=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, wi=0x7fffffffd540) at ../../repos/gcc/gcc/gimple.h:4382 #12 0x0000000000b79c01 in walk_gimple_seq_mod (pseq=pseq@entry=0x7ffff78cb028, callback_stmt=callback_stmt@entry=0xf30aa0 <convert_nonlocal_reference_stmt(gimple_stmt_iterator*, bool*, walk_stmt_info*)>, callback_op=callback_op@entry=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, wi=wi@entry=0x7fffffffd540) at ../../repos/gcc/gcc/gimple-walk.c:51 #13 0x0000000000f28868 in walk_body (callback_stmt=callback_stmt@entry=0xf30aa0 <convert_nonlocal_reference_stmt(gimple_stmt_iterator*, bool*, walk_stmt_info*)>, callback_op=callback_op@entry=0xf2ee90 <convert_nonlocal_reference_op(tree*, int*, void*)>, info=info@entry=0x266f870, pseq=0x7ffff78cb028) at ../../repos/gcc/gcc/tree-nested.c:712 #14 0x0000000000f30490 in convert_nonlocal_omp_clauses (pclauses=0x7ffff76fe6a8, wi=wi@entry=0x7fffffffd7d0) at ../../repos/gcc/gcc/tree-nested.c:1424