From: Jakub Jelinek Date: Fri, 28 Mar 2025 23:49:27 +0000 (+0100) Subject: testsuite: Fix up musttail2.C test X-Git-Tag: basepoints/gcc-16~533 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1a4aff76a2b104ff0b103c685b6c2ce8006fe6bb;p=thirdparty%2Fgcc.git testsuite: Fix up musttail2.C test On Wed, Mar 26, 2025 at 10:10:07AM -0700, Andi Kleen wrote: > I think this needs to be target external_tailcall, otherwise you will > fail on targets that don't support that. > > Or alternatively make this not extern. You're right (although I don't remember which targets are non-external_musttail). Here is a patch to define the function. 2025-03-28 Jakub Jelinek * g++.dg/opt/musttail2.C (foo): Define the function instead of just declaring it, add [[gnu::noipa]] attribute to it. --- diff --git a/gcc/testsuite/g++.dg/opt/musttail2.C b/gcc/testsuite/g++.dg/opt/musttail2.C index ee55c1a18df..d12fcb2e397 100644 --- a/gcc/testsuite/g++.dg/opt/musttail2.C +++ b/gcc/testsuite/g++.dg/opt/musttail2.C @@ -4,7 +4,12 @@ // { dg-final { scan-tree-dump-times " \[^\n\r]* = foo \\\(\[^\n\r]*\\\); \\\[tail call\\\] \\\[must tail call\\\]" 1 "optimized" } } struct S { S () {} }; -char *foo (S); + +[[gnu::noipa]] char * +foo (S) +{ + return 0; +} char * bar (S)