1 // PR c++/65390
2 // { dg-do compile }
3 // { dg-options "" }
4 
5 template<typename T> struct shared_ptr { };
6 
7 template<typename T, typename Arg>
make_shared(Arg)8 shared_ptr<T> make_shared(Arg) { return shared_ptr<T>(); } // { dg-error "variably modified type|trying to instantiate" }
9 
f(int n)10 void f(int n){
11   make_shared<int[n]>(1); // { dg-error "no matching function" }
12 }
13