29 lines
530 B
C
29 lines
530 B
C
// Testcase for deduction of std::initializer_list for auto.
|
|
// { dg-do run }
|
|
// { dg-options "-std=c++0x" }
|
|
|
|
#include <typeinfo>
|
|
#include <initializer_list>
|
|
extern "C" void abort();
|
|
|
|
template <class T>
|
|
void f (T t)
|
|
{
|
|
auto ilt = { &t, &t };
|
|
if (typeid(ilt) != typeid(std::initializer_list<T*>))
|
|
abort();
|
|
|
|
auto il = { 1, 2, 3 };
|
|
if (typeid(il) != typeid(std::initializer_list<int>))
|
|
abort();
|
|
}
|
|
|
|
int main()
|
|
{
|
|
auto il = { 1, 2, 3 };
|
|
if (typeid(il) != typeid(std::initializer_list<int>))
|
|
abort();
|
|
|
|
f('c');
|
|
}
|