25 lines
747 B
C++
25 lines
747 B
C++
// RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify -Wsystem-headers %s
|
|
|
|
// libstdc++4.6 in debug mode has explicit default constructors.
|
|
// stlport has this for all containers.
|
|
#ifdef BE_THE_HEADER
|
|
#pragma clang system_header
|
|
namespace std {
|
|
namespace __debug {
|
|
template <class T>
|
|
class vector {
|
|
public:
|
|
explicit vector() {} // expected-warning 2 {{should not be explicit}}
|
|
};
|
|
}
|
|
}
|
|
#else
|
|
|
|
#define BE_THE_HEADER
|
|
#include __FILE__
|
|
|
|
struct { int a, b; std::__debug::vector<int> c; } e[] = { {1, 1} }; // expected-note{{used in initialization here}}
|
|
// expected-warning@+1 {{expression with side effects has no effect in an unevaluated context}}
|
|
decltype(new std::__debug::vector<int>[1]{}) x; // expected-note{{used in initialization here}}
|
|
#endif
|