52 lines · cpp
1// Same as TestExprWithSideEffectOnConvenienceVar.cpp but without $ escaping2 3// REQUIRES: target-windows4 5// RUN: %build %s -o %t6// RUN: %lldb %t \7// RUN: -o "settings set target.process.track-memory-cache-changes false" \8// RUN: -o "run" \9// RUN: -o "expr int $y = 11" \10// RUN: -o "expr $y" \11// RUN: -o "expr $y = 100" \12// RUN: -o "expr $y" \13// RUN: -o "continue" \14// RUN: -o "expr $y" \15// RUN: -o "expr X $mine = {100, 200}" \16// RUN: -o "expr $mine.a = 300" \17// RUN: -o "expr $mine" \18// RUN: -o "exit" | FileCheck %s -dump-input=fail19 20struct X {21 int a;22 int b;23};24 25int main() {26 X x;27 28 __builtin_debugtrap();29 __builtin_debugtrap();30 return 0;31}32 33// CHECK-LABEL: expr int $y = 1134// CHECK-LABEL: expr $y35// CHECK: (int) $y = 1136 37// CHECK-LABEL: expr $y = 10038// CHECK: (int) $0 = 10039 40// CHECK-LABEL: expr $y41// CHECK: (int) $y = 10042 43// CHECK-LABEL: continue44// CHECK-LABEL: expr $y45// CHECK: (int) $y = 10046 47// CHECK-LABEL: expr X $mine = {100, 200}48// CHECK-LABEL: expr $mine.a = 30049// CHECK: (int) $1 = 30050// CHECK-LABEL: expr $mine51// CHECK: (X) $mine = (a = 300, b = 200)52