diff options
Diffstat (limited to 'test/SemaCXX/static-cast-complete-type.cpp')
-rw-r--r-- | test/SemaCXX/static-cast-complete-type.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/SemaCXX/static-cast-complete-type.cpp b/test/SemaCXX/static-cast-complete-type.cpp new file mode 100644 index 000000000000..83583a5adf8e --- /dev/null +++ b/test/SemaCXX/static-cast-complete-type.cpp @@ -0,0 +1,13 @@ +// RUN: clang-cc -fsyntax-only -verify %s +template<typename T> struct S { + S(int); +}; + +struct T; // expected-note{{forward declaration of 'struct T'}} + +void f() { + S<int> s0 = static_cast<S<int> >(0); + S<void*> s1 = static_cast<S<void*> >(00); + + (void)static_cast<T>(10); // expected-error{{'struct T' is an incomplete type}} +} |