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