[gcn] install.texi: Update for new ISA targets and their requirements
[gcc.git] / gcc / testsuite / g++.dg / cpp23 / Winvalid-utf8-5.C
blob43718b87cfc08a905b7e27a1904ac1d980bb1bdf
1 // P2295R6 - Support for UTF-8 as a portable source file encoding
2 // This test intentionally contains various byte sequences which are not valid UTF-8
3 // { dg-do preprocess { target c++11 } }
4 // { dg-options "-finput-charset=UTF-8" }
6 char32_t a = U'€';                              // { dg-warning "invalid UTF-8 character '<80>'" "" { target c++23 } }
7 char32_t b = U'¿';                              // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } }
8 char32_t c = U'À';                              // { dg-warning "invalid UTF-8 character '<c0>'" "" { target c++23 } }
9 char32_t d = U'Á';                              // { dg-warning "invalid UTF-8 character '<c1>'" "" { target c++23 } }
10 char32_t e = U'õ';                              // { dg-warning "invalid UTF-8 character '<f5>'" "" { target c++23 } }
11 char32_t f = U'ÿ';                              // { dg-warning "invalid UTF-8 character '<ff>'" "" { target c++23 } }
12 char32_t g = U'Â';                              // { dg-warning "invalid UTF-8 character '<c2>'" "" { target c++23 } }
13 char32_t h = U'à';                              // { dg-warning "invalid UTF-8 character '<e0>'" "" { target c++23 } }
14 char32_t i = U'à€¿';                            // { dg-warning "invalid UTF-8 character '<e0><80><bf>'" "" { target c++23 } }
15 char32_t j = U'àŸ€';                            // { dg-warning "invalid UTF-8 character '<e0><9f><80>'" "" { target c++23 } }
16 char32_t k = U'à¿';                             // { dg-warning "invalid UTF-8 character '<e0><bf>'" "" { target c++23 } }
17 char32_t l = U'ì€';                             // { dg-warning "invalid UTF-8 character '<ec><80>'" "" { target c++23 } }
18 char32_t m = U'';                              // { dg-warning "invalid UTF-8 character '<ed><a0><80>'" "" { target c++23 } }
19 char32_t n = U'ð€€€';                           // { dg-warning "invalid UTF-8 character '<f0><80><80><80>'" "" { target c++23 } }
20 char32_t o = U'ð�¿¿';                           // { dg-warning "invalid UTF-8 character '<f0><8f><bf><bf>'" "" { target c++23 } }
21 char32_t p = U'';                              // { dg-warning "invalid UTF-8 character '<f4><90><80><80>'" "" { target c++23 } }
22 char32_t q = U'';                              // { dg-warning "invalid UTF-8 character '<fd><bf><bf><bf>'" "" { target c++23 } }
23                                                 // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } .-1 }
24 auto A = U"€߿ࠀ퟿𐀀􏿿";            // { dg-bogus "invalid UTF-8 character" }
25 auto B = U"€";                                  // { dg-warning "invalid UTF-8 character '<80>'" "" { target c++23 } }
26 auto C = U"¿";                                  // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } }
27 auto D = U"À";                                  // { dg-warning "invalid UTF-8 character '<c0>'" "" { target c++23 } }
28 auto E = U"Á";                                  // { dg-warning "invalid UTF-8 character '<c1>'" "" { target c++23 } }
29 auto F = U"õ";                                  // { dg-warning "invalid UTF-8 character '<f5>'" "" { target c++23 } }
30 auto G = U"ÿ";                                  // { dg-warning "invalid UTF-8 character '<ff>'" "" { target c++23 } }
31 auto H = U"Â";                                  // { dg-warning "invalid UTF-8 character '<c2>'" "" { target c++23 } }
32 auto I = U"à";                                  // { dg-warning "invalid UTF-8 character '<e0>'" "" { target c++23 } }
33 auto J = U"à€¿";                                // { dg-warning "invalid UTF-8 character '<e0><80><bf>'" "" { target c++23 } }
34 auto K = U"àŸ€";                                // { dg-warning "invalid UTF-8 character '<e0><9f><80>'" "" { target c++23 } }
35 auto L = U"à¿";                                 // { dg-warning "invalid UTF-8 character '<e0><bf>'" "" { target c++23 } }
36 auto M = U"ì€";                                 // { dg-warning "invalid UTF-8 character '<ec><80>'" "" { target c++23 } }
37 auto N = U"";                          // { dg-warning "invalid UTF-8 character '<ed><a0><80>'" "" { target c++23 } }
38 auto O = U"ð€€€";                               // { dg-warning "invalid UTF-8 character '<f0><80><80><80>'" "" { target c++23 } }
39 auto P = U"ð�¿¿";                               // { dg-warning "invalid UTF-8 character '<f0><8f><bf><bf>'" "" { target c++23 } }
40 auto Q = U"";                          // { dg-warning "invalid UTF-8 character '<f4><90><80><80>'" "" { target c++23 } }
41 auto R = U"";                          // { dg-warning "invalid UTF-8 character '<fd><bf><bf><bf>'" "" { target c++23 } }
42                                                 // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } .-1 }
43 auto A1 = UR"(€߿ࠀ퟿𐀀􏿿)";                // { dg-bogus "invalid UTF-8 character" }
44 auto B1 = UR"(€)";                              // { dg-warning "invalid UTF-8 character '<80>'" "" { target c++23 } }
45 auto C1 = UR"(¿)";                              // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } }
46 auto D1 = UR"(À)";                              // { dg-warning "invalid UTF-8 character '<c0>'" "" { target c++23 } }
47 auto E1 = UR"(Á)";                              // { dg-warning "invalid UTF-8 character '<c1>'" "" { target c++23 } }
48 auto F1 = UR"(õ)";                              // { dg-warning "invalid UTF-8 character '<f5>'" "" { target c++23 } }
49 auto G1 = UR"(ÿ)";                              // { dg-warning "invalid UTF-8 character '<ff>'" "" { target c++23 } }
50 auto H1 = UR"(Â)";                              // { dg-warning "invalid UTF-8 character '<c2>'" "" { target c++23 } }
51 auto I1 = UR"(à)";                              // { dg-warning "invalid UTF-8 character '<e0>'" "" { target c++23 } }
52 auto J1 = UR"(à€¿)";                            // { dg-warning "invalid UTF-8 character '<e0><80><bf>'" "" { target c++23 } }
53 auto K1 = UR"(àŸ€)";                            // { dg-warning "invalid UTF-8 character '<e0><9f><80>'" "" { target c++23 } }
54 auto L1 = UR"(à¿)";                             // { dg-warning "invalid UTF-8 character '<e0><bf>'" "" { target c++23 } }
55 auto M1 = UR"(ì€)";                             // { dg-warning "invalid UTF-8 character '<ec><80>'" "" { target c++23 } }
56 auto N1 = UR"()";                              // { dg-warning "invalid UTF-8 character '<ed><a0><80>'" "" { target c++23 } }
57 auto O1 = UR"(ð€€€)";                           // { dg-warning "invalid UTF-8 character '<f0><80><80><80>'" "" { target c++23 } }
58 auto P1 = UR"(ð�¿¿)";                           // { dg-warning "invalid UTF-8 character '<f0><8f><bf><bf>'" "" { target c++23 } }
59 auto Q1 = UR"()";                              // { dg-warning "invalid UTF-8 character '<f4><90><80><80>'" "" { target c++23 } }
60 auto R1 = UR"()";                              // { dg-warning "invalid UTF-8 character '<fd><bf><bf><bf>'" "" { target c++23 } }
61                                                 // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } .-1 }
62 auto A2 = u8"€߿ࠀ퟿𐀀􏿿";          // { dg-bogus "invalid UTF-8 character" }
63 auto B2 = u8"€";                                // { dg-warning "invalid UTF-8 character '<80>'" "" { target c++23 } }
64 auto C2 = u8"¿";                                // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } }
65 auto D2 = u8"À";                                // { dg-warning "invalid UTF-8 character '<c0>'" "" { target c++23 } }
66 auto E2 = u8"Á";                                // { dg-warning "invalid UTF-8 character '<c1>'" "" { target c++23 } }
67 auto F2 = u8"õ";                                // { dg-warning "invalid UTF-8 character '<f5>'" "" { target c++23 } }
68 auto G2 = u8"ÿ";                                // { dg-warning "invalid UTF-8 character '<ff>'" "" { target c++23 } }
69 auto H2 = u8"Â";                                // { dg-warning "invalid UTF-8 character '<c2>'" "" { target c++23 } }
70 auto I2 = u8"à";                                // { dg-warning "invalid UTF-8 character '<e0>'" "" { target c++23 } }
71 auto J2 = u8"à€¿";                              // { dg-warning "invalid UTF-8 character '<e0><80><bf>'" "" { target c++23 } }
72 auto K2 = u8"àŸ€";                              // { dg-warning "invalid UTF-8 character '<e0><9f><80>'" "" { target c++23 } }
73 auto L2 = u8"à¿";                               // { dg-warning "invalid UTF-8 character '<e0><bf>'" "" { target c++23 } }
74 auto M2 = u8"ì€";                               // { dg-warning "invalid UTF-8 character '<ec><80>'" "" { target c++23 } }
75 auto N2 = u8"";                                // { dg-warning "invalid UTF-8 character '<ed><a0><80>'" "" { target c++23 } }
76 auto O2 = u8"ð€€€";                             // { dg-warning "invalid UTF-8 character '<f0><80><80><80>'" "" { target c++23 } }
77 auto P2 = u8"ð�¿¿";                             // { dg-warning "invalid UTF-8 character '<f0><8f><bf><bf>'" "" { target c++23 } }
78 auto Q2 = u8"";                                // { dg-warning "invalid UTF-8 character '<f4><90><80><80>'" "" { target c++23 } }
79 auto R2 = u8"";                                // { dg-warning "invalid UTF-8 character '<fd><bf><bf><bf>'" "" { target c++23 } }
80                                                 // { dg-warning "invalid UTF-8 character '<bf>'" "" { target c++23 } .-1 }