https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118486

--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> ---
For the first case,

omp_declare_variant_finalize_one's

8550        variant = finish_call_expr (variant, &args,
/*disallow_virtual=*/false,

has

(gdb) p debug(variant)
TARGET_EXPR <D.3010, expl ()>

But after
8555      variant = cp_get_callee_fndecl_nofold (STRIP_REFERENCE_REF
(variant));
variant == NULL.


The TARGET_EXPR is added via finish_call_expr → build_new_function_call →
build_over_call in build_cxx_call:

11291             fn = build_cplus_new (TREE_TYPE (fn), fn, complain);

via tree.cc's
  746       rval = build_target_expr (slot, rval, complain);

Reply via email to