From d1fafc8b0569b1cef000e1063657e2752f41ecb4 Mon Sep 17 00:00:00 2001 From: Tim Northover Date: Tue, 8 Aug 2017 23:17:51 +0000 Subject: Revert "Lexer: always allow imaginary constants in GNU mode." This reverts r310423. It was committed by mistake, I intended to commit the improved diagnostics for implicit conversions instead. llvm-svn: 310426 --- clang/test/Lexer/imaginary-constants.cpp | 25 ------------------------- 1 file changed, 25 deletions(-) delete mode 100644 clang/test/Lexer/imaginary-constants.cpp (limited to 'clang/test/Lexer') diff --git a/clang/test/Lexer/imaginary-constants.cpp b/clang/test/Lexer/imaginary-constants.cpp deleted file mode 100644 index 3a176be54a1..00000000000 --- a/clang/test/Lexer/imaginary-constants.cpp +++ /dev/null @@ -1,25 +0,0 @@ -// RUN: %clang_cc1 -fsyntax-only -verify %s -std=gnu++98 -DHAVE_IMAGINARY=1 -// RUN: %clang_cc1 -fsyntax-only -verify %s -std=gnu++11 -DHAVE_IMAGINARY=1 -// RUN: %clang_cc1 -fsyntax-only -verify %s -std=gnu++14 -DHAVE_IMAGINARY=1 -// RUN: %clang_cc1 -fsyntax-only -verify %s -std=c++98 -DHAVE_IMAGINARY=0 -// RUN: %clang_cc1 -fsyntax-only -verify %s -std=c++11 -DHAVE_IMAGINARY=0 -// RUN: %clang_cc1 -fsyntax-only -verify %s -std=c++14 -DHAVE_IMAGINARY=0 -DCXX14=1 - -// Imaginary constants are a GNU extension that became problematic when C++14 -// defined its own versions. Until then they're supported even in -// standards-compliant mode. -#if HAVE_IMAGINARY -// expected-no-diagnostics -#elif CXX14 -// expected-error@+9 {{no matching literal operator for call to 'operator""i' with argument of type 'unsigned long long' or 'const char *', and no matching literal operator template}} -// expected-error@+9 {{no matching literal operator for call to 'operator""il' with argument of type 'unsigned long long' or 'const char *', and no matching literal operator template}} -// expected-error@+9 {{invalid suffix 'ill' on integer constant}} -#else -// expected-error@+5 {{invalid suffix 'i' on integer constant}} -// expected-error@+5 {{invalid suffix 'il' on integer constant}} -// expected-error@+7 {{invalid suffix 'ill' on integer constant}} -#endif - -_Complex int val1 = 2i; -_Complex long val2 = 2il; -_Complex long long val3 = 2ill; -- cgit v1.2.3