/* Test C2x digit separators. Invalid usages. */ /* { dg-do compile } */ /* { dg-options "-std=c2x -pedantic-errors" } */ void tf (void) { int i; i = 1''2; /* { dg-error "adjacent digit separators" } */ i = 0x'0; /* { dg-error "digit separator after base indicator" } */ i = 0X'1; /* { dg-error "digit separator after base indicator" } */ i = 0b'0; /* { dg-error "digit separator after base indicator" } */ i = 0B'1; /* { dg-error "digit separator after base indicator" } */ i = 1'u; /* { dg-error "digit separator outside digit sequence" } */ float f = 1.2e-3'f; /* { dg-error "digit separator outside digit sequence" } */ i = 1'2'3'; /* { dg-error "12:missing terminating" } */ ; double d; d = 1'.2'3e-4; /* { dg-warning "multi-character" } */ /* { dg-error "expected" "parse error" { target *-*-* } .-1 } */ d = 1.2''3; /* { dg-error "adjacent digit separators" } */ d = 1.23e-4''5; /* { dg-error "adjacent digit separators" } */ d = 1.2'3e-4'5'; /* { dg-error "17:missing terminating" } */ /* { dg-error "expected" "parse error" { target *-*-* } .-1 } */ }