Richard Smith | ada0888 | 2017-04-19 21:15:45 +0000 | [diff] [blame^] | 1 | // RUN: %clang_cc1 -std=c++1z %s -emit-llvm -o - | FileCheck %s |
2 | |||||
3 | template<typename T> struct A { | ||||
4 | A(T = 0); | ||||
5 | A(void*); | ||||
6 | }; | ||||
7 | |||||
8 | template<typename T> A(T*) -> A<long>; | ||||
9 | A() -> A<int>; | ||||
10 | |||||
11 | // CHECK-LABEL: @_Z1fPi( | ||||
12 | void f(int *p) { | ||||
13 | // CHECK: @_ZN1AIiEC | ||||
14 | A a{}; | ||||
15 | |||||
16 | // CHECK: @_ZN1AIlEC | ||||
17 | A b = p; | ||||
18 | |||||
19 | // CHECK: @_ZN1AIxEC | ||||
20 | A c = 123LL; | ||||
21 | } |