diff options
Diffstat (limited to 'clang/test/ASTMerge/exprs-cpp')
-rw-r--r-- | clang/test/ASTMerge/exprs-cpp/Inputs/exprs3.cpp | 141 | ||||
-rw-r--r-- | clang/test/ASTMerge/exprs-cpp/test.cpp | 50 |
2 files changed, 0 insertions, 191 deletions
diff --git a/clang/test/ASTMerge/exprs-cpp/Inputs/exprs3.cpp b/clang/test/ASTMerge/exprs-cpp/Inputs/exprs3.cpp deleted file mode 100644 index 6fdc33fb391..00000000000 --- a/clang/test/ASTMerge/exprs-cpp/Inputs/exprs3.cpp +++ /dev/null @@ -1,141 +0,0 @@ -// Integer literals -const char Ch1 = 'a'; -const signed char Ch2 = 'b'; -const unsigned char Ch3 = 'c'; - -const wchar_t Ch4 = L'd'; -const signed wchar_t Ch5 = L'e'; -const unsigned wchar_t Ch6 = L'f'; - -const short C1 = 12; -const unsigned short C2 = 13; - -const int C3 = 12; -const unsigned int C4 = 13; - -const long C5 = 22; -const unsigned long C6 = 23; - -const long long C7 = 66; -const unsigned long long C8 = 67; - - -// String literals -const char str1[] = "ABCD"; -const char str2[] = "ABCD" "0123"; - -const wchar_t wstr1[] = L"DEF"; -const wchar_t wstr2[] = L"DEF" L"123"; - - -// Boolean literals -const bool bval1 = true; -const bool bval2 = false; - -// Floating Literals -const float F1 = 12.2F; -const double F2 = 1E4; -const long double F3 = 1.2E-3L; - - -// nullptr literal -const void *vptr = nullptr; - - -int glb_1[4] = { 10, 20, 30, 40 }; - -struct S1 { - int a; - int b[3]; -}; - -struct S2 { - int c; - S1 d; -}; - -S2 glb_2 = { 22, .d.a = 44, .d.b[0] = 55, .d.b[1] = 66 }; - -void testNewThrowDelete() { - throw; - char *p = new char[10]; - delete[] p; -} - -int testArrayElement(int *x, int n) { - return x[n]; -} - -int testTernaryOp(int c, int x, int y) { - return c ? x : y; -} - -S1 &testConstCast(const S1 &x) { - return const_cast<S1&>(x); -} - -S1 &testStaticCast(S1 &x) { - return static_cast<S1&>(x); -} - -S1 &testReinterpretCast(S1 &x) { - return reinterpret_cast<S1&>(x); -} - -S1 &testDynamicCast(S1 &x) { - return dynamic_cast<S1&>(x); -} - -int testScalarInit(int x) { - return int(x); -} - -struct S { - float f; - double d; -}; -struct T { - int i; - struct S s[10]; -}; - -void testOffsetOf() { - __builtin_offsetof(struct T, s[2].d); -} - - -int testDefaultArg(int a = 2*2) { - return a; -} - -int testDefaultArgExpr() { - return testDefaultArg(); -} - -template <typename T> // T has TemplateTypeParmType -void testTemplateTypeParmType(int i); - -void useTemplateType() { - testTemplateTypeParmType<char>(4); -} - -const bool ExpressionTrait = __is_lvalue_expr(1); -const unsigned ArrayRank = __array_rank(int[10][20]); -const unsigned ArrayExtent = __array_extent(int[10][20], 1); - -constexpr int testLambdaAdd(int toAdd) { - const int Captured1 = 1, Captured2 = 2; - constexpr auto LambdaAdd = [Captured1, Captured2](int k) -> int { - return Captured1 + Captured2 + k; - }; - return LambdaAdd(toAdd); -} - -template<typename T> -struct TestLambdaTemplate { - T i, j; - TestLambdaTemplate(T i, const T &j) : i(i), j(j) {} - T testLambda(T k) { - return [this](T k) -> decltype(auto) { return i + j + k; }(k); - } -}; diff --git a/clang/test/ASTMerge/exprs-cpp/test.cpp b/clang/test/ASTMerge/exprs-cpp/test.cpp deleted file mode 100644 index c0b282ec028..00000000000 --- a/clang/test/ASTMerge/exprs-cpp/test.cpp +++ /dev/null @@ -1,50 +0,0 @@ -// RUN: %clang_cc1 -triple %itanium_abi_triple -std=c++1z -fcxx-exceptions -emit-pch -o %t.1.ast %S/Inputs/exprs3.cpp -// RUN: %clang_cc1 -triple %itanium_abi_triple -std=c++1z -fcxx-exceptions -ast-merge %t.1.ast -fsyntax-only -verify %s -// expected-no-diagnostics - -static_assert(Ch1 == 'a'); -static_assert(Ch2 == 'b'); -static_assert(Ch3 == 'c'); - -static_assert(Ch4 == L'd'); -static_assert(Ch5 == L'e'); -static_assert(Ch6 == L'f'); - -static_assert(C1 == 12); -static_assert(C2 == 13); - -static_assert(C3 == 12); -static_assert(C4 == 13); - -static_assert(C5 == 22L); -static_assert(C6 == 23L); - -static_assert(C7 == 66LL); -static_assert(C8 == 67ULL); - -static_assert(bval1 == true); -static_assert(bval2 == false); - -static_assert(ExpressionTrait == false); - -static_assert(ArrayRank == 2); -static_assert(ArrayExtent == 20); - -static_assert(testLambdaAdd(3) == 6); - -void testImport(int *x, const S1 &cs1, S1 &s1) { - testNewThrowDelete(); - testArrayElement(nullptr, 12); - testTernaryOp(0, 1, 2); - testConstCast(cs1); - testStaticCast(s1); - testReinterpretCast(s1); - testDynamicCast(s1); - testScalarInit(42); - testOffsetOf(); - testDefaultArg(12); - testDefaultArg(); - testDefaultArgExpr(); - useTemplateType(); - TestLambdaTemplate<int>(1, 2).testLambda(3); -} |