34 lines · plain
1# Check that LLDB prints an error message containing the DWO_AT_comp_dir and2# DW_AT_dwo_name when it can't find a DWO and the DW_AT_comp_dir and3# DW_AT_dwo_name are relative.4 5# -gsplit-dwarf is supported only on Linux.6# REQUIRES: system-linux7 8# Test the error message with a relative DW_AT_comp_dir and DW_AT_dwo_name.9# Creating and compiling to %t.compdir makes it easy to remove the dwo files.10# DW_AT_comp_dir should be "./a/b/", and DW_AT_dwo_name should be11# "a.out-dwo-missing-error.dwo".12# RUN: rm -rf %t.compdir/13# RUN: mkdir -p %t.compdir/a/b/14# RUN: pushd %t.compdir/a/b/15# RUN: %clang_host %S/Inputs/dwo-missing-error.c -glldb -gdwarf-5 \16# RUN: -gsplit-dwarf -fdebug-prefix-map=%t.compdir=. -o a.out17# RUN: rm *.dwo18# RUN: %lldb a.out -s %s -o exit 2>&1 | FileCheck %s 19# RUN: popd20 21# Test the error message with an absolute DW_AT_comp_dir and DW_AT_dwo_name.22# RUN: rm -rf %t.compdir/23# RUN: mkdir -p %t.compdir/a/b/24# RUN: %clang_host %S/Inputs/dwo-missing-error.c -glldb -gdwarf-5 \25# RUN: -gsplit-dwarf -o %t.compdir/a/b/a.out26# RUN: rm %t.compdir/a/b/*.dwo27# RUN: %lldb %t.compdir/a/b/a.out -s %s -o exit 2>&1 | FileCheck %s 28 29b main30run31 32fr v33# CHECK: error: unable to locate .dwo debug file "{{.*}}a/b/a.out-dwo-missing-error.dwo" for skeleton DIE {{.*}}34