Newer
Older
// RUN: cat %s | %cling -Xclang -verify
#include "cling/Interpreter/Interpreter.h"
Axel Naumann
committed
#include "cling/Interpreter/StoredValueRef.h"
Axel Naumann
committed
cling::StoredValueRef V;
V // CHECK: (cling::StoredValueRef) <<<invalid>>> @0x{{.*}}
Vassil Vassilev
committed
gCling->evaluate("1;", V);
Axel Naumann
committed
V // CHECK: (cling::StoredValueRef) boxes [(int) 1]
long LongV = 17;
Vassil Vassilev
committed
gCling->evaluate("LongV;", V);
Axel Naumann
committed
V // CHECK: (cling::StoredValueRef) boxes [(long) 17]
int* IntP = (int*)0x12;
Vassil Vassilev
committed
gCling->evaluate("IntP;", V);
Axel Naumann
committed
V // CHECK: (cling::StoredValueRef) boxes [(int *) 0x12]
Axel Naumann
committed
cling::StoredValueRef Result;
Vassil Vassilev
committed
gCling->evaluate("V", Result);
Vassil Vassilev
committed
Result // CHECK: (cling::StoredValueRef) boxes [(cling::StoredValueRef)]
Axel Naumann
committed
V // CHECK: (cling::StoredValueRef) boxes [(int *) 0x12]
// Savannah #96277
Vassil Vassilev
committed
gCling->evaluate("double sin(double); double one = sin(3.141/2);", V);
V // CHECK: (cling::StoredValueRef) boxes [(double) 1.000000e+00]
gCling->process("double sin(double); double one = sin(3.141/2);", &V);
V // CHECK: (cling::StoredValueRef) boxes [(double) 1.000000e+00]
one // CHECK: (double) 1.000
int one; // expected-error {{saying something like redecl but verify is broken!}}