https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106548
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> --- The ICE is for: expand_expr_real_1's 10721 gcc_assert (SCOPE_FILE_SCOPE_P (context) 10722 || context == current_function_decl 10723 || TREE_STATIC (exp) 10724 || DECL_EXTERNAL (exp) where context) is function_decl f3 but current_function_decl is function_decl f3._omp_fn.0 Here, exp is a long long int ssa_name with 'visited var <parm_decl 0x7ffff7ffb180 k>' and the Gimple stmt is: _35 = _33 * k_34(D); The dump is: void f3._omp_fn.0 (...) ... <bb 2> : k_13 = .omp_data_i_12(D)->k; ... _35 = _33 * k_34(D); Thus, it seems as if some VALUE_EXPR is not taken into account?