1# UNSUPPORTED: system-darwin, system-windows 2 3# Make sure DWARF v4 type units work. 4# RUN: %clangxx_host %S/Inputs/debug-types-expressions.cpp \ 5# RUN: -g -gdwarf-4 -fdebug-types-section -o %t4 6# RUN: %lldb %t4 -s %s -o exit | FileCheck %s 7 8# Now do the same for DWARF v5. 9# RUN: %clangxx_host %S/Inputs/debug-types-expressions.cpp \ 10# RUN: -g -gdwarf-5 -fdebug-types-section -o %t5 11# RUN: %lldb %t5 -s %s -o exit | FileCheck %s 12 13# Test type units in dwo files. 14# RUN: %clangxx_host %S/Inputs/debug-types-expressions.cpp \ 15# RUN: -g -gdwarf-4 -fdebug-types-section -gsplit-dwarf -o %t4dwo \ 16# RUN: -Xclang -split-dwarf-output -Xclang %t4dwo.dwo \ 17# RUN: -Xclang -split-dwarf-file -Xclang %t4dwo.dwo 18# RUN: %lldb %t4dwo -s %s -o exit | FileCheck %s 19 20# And type units+dwo+dwarf5. 21# RUN: %clangxx_host %S/Inputs/debug-types-expressions.cpp \ 22# RUN: -g -gdwarf-5 -fdebug-types-section -gsplit-dwarf -o %t5dwo \ 23# RUN: -Xclang -split-dwarf-output -Xclang %t5dwo.dwo \ 24# RUN: -Xclang -split-dwarf-file -Xclang %t5dwo.dwo 25# RUN: %lldb %t5dwo -s %s -o exit | FileCheck %s 26 27breakpoint set -n foo 28process launch 29 30# CHECK: Process {{.*}} stopped 31 32frame variable a 33# CHECK-LABEL: frame variable a 34# CHECK: (B *) a = 35 36frame variable *a 37# CHECK-LABEL: frame variable *a 38# CHECK: (B) *a = { 39# CHECK-NEXT: A = (i = 47) 40# CHECK-NEXT: j = 42 41# CHECK-NEXT: } 42 43expression a->f() 44# CHECK-LABEL: expression a->f() 45# CHECK: (int) $0 = 47 46 47expression ns::A() 48# CHECK-LABEL: expression ns::A() 49# CHECK: (ns::A) $1 = (i = 147) 50 51expression ns::A().i + a->i 52# CHECK-LABEL: expression ns::A().i + a->i 53# CHECK: (int) $2 = 194 54 55expression ns::A().getA() 56# CHECK-LABEL: ns::A().getA() 57# CHECK: (A) $3 = (i = 146) 58