| 1 | // RUN: %clang_cc1 -std=c++11 -emit-llvm %s -o - -fms-extensions -fdelayed-template-parsing -triple=i386-pc-win32 | FileCheck %s |
| 2 | // RUN: %clang_cc1 -std=c++11 -emit-llvm %s -o - -fms-extensions -fdelayed-template-parsing -triple=x86_64-pc-win32 | FileCheck -check-prefix X64 %s |
| 3 | |
| 4 | namespace ClassScopeSpecialization { |
| 5 | struct Type { |
| 6 | template <int i> |
| 7 | void Foo() {} |
| 8 | template <> |
| 9 | void Foo<0>() {} |
| 10 | }; |
| 11 | |
| 12 | void call() { |
| 13 | Type T; |
| 14 | // CHECK: call {{.*}} @"??$Foo@$0A@@Type@ClassScopeSpecialization@@QAEXXZ" |
| 15 | // X64: call {{.*}} @"??$Foo@$0A@@Type@ClassScopeSpecialization@@QEAAXXZ" |
| 16 | T.Foo<0>(); |
| 17 | } |
| 18 | } |
| 19 | |