blob: 6eadf2ea87f0b1597221cbbc0b0cdc931560c8b4 [file] [log] [blame]
/* Test C2x digit separators. Valid usages. */
/* { dg-do run } */
/* { dg-options "-std=c2x -pedantic-errors" } */
_Static_assert (123'45'6 == 123456);
_Static_assert (0'123 == 0123);
_Static_assert (0x1'23 == 0x123);
#define m(x) 0
_Static_assert (m(1'2)+(3'4) == 34);
_Static_assert (0x0'e-0xe == 0);
#define a0 '.' -
#define acat(x) a ## x
_Static_assert (acat (0'.') == 0);
#define c0(x) 0
#define b0 c0 (
#define bcat(x) b ## x
_Static_assert (bcat (0'\u00c0')) == 0);
extern void exit (int);
extern void abort (void);
int
main (void)
{
if (314'159e-0'5f != 3.14159f)
abort ();
exit (0);
}
#line 0'123
_Static_assert (__LINE__ == 123);
#line 4'56'7'8'9
_Static_assert (__LINE__ == 456789);