On 4/24/25 12:23 PM, Dimitar Dimitrov wrote:
Some backends do not define TARGET_ASM_OUTPUT_MI_THUNK.  But the generic
thunk support cannot emit code for calling variadic methods of
multiple-inheritance classes.  Example error for pru-unknown-elf:

  .../gcc/gcc/testsuite/g++.dg/ipa/pr83549.C:7:24: error: generic thunk code 
fails for method 'virtual void C::_ZThn4_N1C3fooEz(...)' which uses '...'

Disable the affected tests for all targets which do not define
TARGET_ASM_OUTPUT_MI_THUNK.

Ensured that test results with and without this patch for
x86_64-pc-linux-gnu are the same.

Ok for trunk?

gcc/testsuite/ChangeLog:

        * g++.dg/ipa/pr83549.C: Require effective target
        variadic_mi_thunk.
        * g++.dg/ipa/pr83667.C: Ditto.
        * g++.dg/torture/pr81812.C: Ditto.
        * g++.old-deja/g++.jason/thunk3.C: Ditto.
        * lib/target-supports.exp
        (check_effective_target_variadic_mi_thunk): New function.
OK.
jeff

Reply via email to