blob: d63d3f54c3395692bf97914a3b7d61f498b5718b [file] [log] [blame]
Stephen Hines6bcf27b2014-05-29 04:14:42 -07001// RUN: %clang_cc1 -std=c++1y -triple i386-pc-win32 -fms-compatibility -fms-extensions -fsyntax-only -verify %s
2// expected-no-diagnostics
3
4int foo() {
5 static_assert(sizeof(__FUNCDNAME__) == 12, "?foo@@YAHXZ");
6 return 0;
7}
8
9// Within templates.
10template <typename T>
11int baz() {
12 static_assert(sizeof(__FUNCDNAME__) == 16, "??$baz@H@@YAHXZ");
13
14 return 0;
15}
16
17struct A {
18 A() {
19 static_assert(sizeof(__FUNCDNAME__) == 13, "??0A@@QAE@XZ");
20 }
21 ~A() {
22 static_assert(sizeof(__FUNCDNAME__) == 13, "??1A@@QAE@XZ");
23 }
24};
25
26int main() {
27 static_assert(sizeof(__FUNCDNAME__) == 5, "main");
28
29 baz<int>();
30
31 return 0;
32}