@@ -79,8 +79,22 @@ TYPED_TEST(CppInterOpTest, InterpreterTestEvaluate) {
7979 bool HadError;
8080 EXPECT_TRUE (Cpp::Evaluate (" #error" , &HadError) == (intptr_t )~0UL );
8181 EXPECT_TRUE (HadError);
82+ // for llvm < 19 this tests different overloads of
83+ // __clang_Interpreter_SetValueNoAlloc
8284 EXPECT_EQ (Cpp::Evaluate (" int i = 11; ++i" , &HadError), 12 );
83- EXPECT_FALSE (HadError) ;
85+ EXPECT_FALSE (HadError);
86+ EXPECT_EQ (Cpp::Evaluate (" double a = 12.; a" , &HadError), 12 .);
87+ EXPECT_FALSE (HadError);
88+ EXPECT_EQ (Cpp::Evaluate (" float b = 13.; b" , &HadError), 13 .);
89+ EXPECT_FALSE (HadError);
90+ EXPECT_EQ (Cpp::Evaluate (" long double c = 14.; c" , &HadError), 14 .);
91+ EXPECT_FALSE (HadError);
92+ EXPECT_EQ (Cpp::Evaluate (" long double d = 15.; d" , &HadError), 15 .);
93+ EXPECT_FALSE (HadError);
94+ EXPECT_EQ (Cpp::Evaluate (" unsigned long long e = 16; e" , &HadError), 16 );
95+ EXPECT_FALSE (HadError);
96+ EXPECT_NE (Cpp::Evaluate (" struct S{} s; s" , &HadError), (intptr_t )~0UL );
97+ EXPECT_FALSE (HadError);
8498}
8599
86100TYPED_TEST (CppInterOpTest, InterpreterTestDeleteInterpreter) {
0 commit comments