repo.or.cz
/
official-gcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
PR c++/85765 - SFINAE and non-type default template arg.
[official-gcc.git]
/
gcc
/
testsuite
/
g++.dg
/
cpp0x
/
sfinae17.C
blob
c56a5d4198cf29cdebc76810a601fda558c828f0
1
// PR c++/48530
2
// { dg-do compile { target c++11 } }
3
4
template<class T,
5
class = decltype(T{})
6
>
7
char f(int);
8
9
template<class>
10
char (&f(...))[2];
11
12
struct DelDtor {
13
~DelDtor() = delete;
14
};
15
16
static_assert(sizeof(f<DelDtor[2]>(0)) != 1, "Error");
17
18
struct A
19
{
20
static DelDtor *p;
21
};
22
23
template<class T,
24
class = decltype(delete T::p, (T*)0)
25
>
26
char g(int);
27
28
template<class>
29
char (&g(...))[2];
30
31
static_assert(sizeof(g<DelDtor>(0)) != 1, "Error");