testsuite: Adjust cpp2a/lambda-uneval regrex

Both lambda-uneval1.C and lambda-uneval5.C test that a symbol is not
declared global by looking for "globl" assembler directive.  The testcases
generate the "lglobl" directive in AIX XCOFF, which is a false positive.
This patch restricts the regex to ignore a prepended "l".  The patch
also tightens the regex to specifically look for space, tab or period
between the "globl" and the symbol.

Tested on powerpc-ibm-aix7.2.3.0 and powerpc64le-linux-gnu.

	* g++.dg/cpp2a/lambda-uneval1.C: Ignore preceding "l" and
	intervening period.
	* g++.dg/cpp2a/lambda-uneval5.C: Ignore preceding "l" and
	explicitly check for intervening space, tab or period.
This commit is contained in:
David Edelsohn 2021-01-21 14:17:10 -05:00
parent 68ba1039c7
commit 9929d04ee2
2 changed files with 2 additions and 2 deletions

View File

@ -2,7 +2,7 @@
typedef decltype([]{}) C; // the closure type has no name for linkage purposes
// { dg-final { scan-assembler-not "globl\[ \t]*_Z1f" } }
// { dg-final { scan-assembler-not "\[^l\]globl\[ \t\.\]*_Z1f" } }
// { dg-final { scan-assembler-not "_Z1f1C" } }
void f(C) {}

View File

@ -2,4 +2,4 @@
using L = decltype([]{ });
void f(L) { }
// { dg-final { scan-assembler-not "globl.*_Z1f" } }
// { dg-final { scan-assembler-not "\[^l\]globl\[ \t\.\]*_Z1f" } }