| 1 | // RUN: %clang_cc1 -fsyntax-only -verify -std=c++0x -triple x86_64-pc-linux-gnu -ffreestanding %s |
| 2 | // RUN: %clang_cc1 -fsyntax-only -verify -std=c++0x -triple x86_64-pc-linux-gnu -ffreestanding -fwchar-type=short -fno-signed-wchar %s |
| 3 | // expected-no-diagnostics |
| 4 | |
| 5 | #include <stdint.h> |
| 6 | |
| 7 | // In theory, the promoted types vary by platform; however, in reality they |
| 8 | // are quite consistent across all platforms where clang runs. |
| 9 | |
| 10 | extern int promoted_wchar; |
| 11 | extern decltype(+L'a') promoted_wchar; |
| 12 | |
| 13 | extern int promoted_char16; |
| 14 | extern decltype(+u'a') promoted_char16; |
| 15 | |
| 16 | extern unsigned promoted_char32; |
| 17 | extern decltype(+U'a') promoted_char32; |
| 18 | |