This still only includes the dwo name if it's in the DW_AT_dwo_name attribute in the split unit - though it could be improved/modified to use the dwo name from the command line (if linking raw dwo files) or retrieved from the DW_AT_dwo_name in the executable (when using -e). It's useful in any case because you might have a large command line with many files and knowing exactly which dwo files are relevant will simplify debugging, but especially with '-e' when you didn't pass the dwo files explicitly in nthe first place it would be quite non-obvious where the duplicate units are coming from.
28 lines
1.5 KiB
Plaintext
28 lines
1.5 KiB
Plaintext
RUN: not llvm-dwp %p/../Inputs/duplicate/c.dwo %p/../Inputs/duplicate/c.dwo -o %t 2>&1 \
|
|
RUN: | FileCheck --check-prefix=DWOS %s
|
|
|
|
RUN: not llvm-dwp %p/../Inputs/duplicate/c.dwo %p/../Inputs/duplicate/bc.dwp -o %t 2>&1 \
|
|
RUN: | FileCheck --check-prefix=2DWP %s
|
|
|
|
RUN: not llvm-dwp %p/../Inputs/duplicate/ac.dwp %p/../Inputs/duplicate/c.dwo -o %t 2>&1 \
|
|
RUN: | FileCheck --check-prefix=1DWP %s
|
|
|
|
RUN: not llvm-dwp %p/../Inputs/duplicate_dwo_name/c.dwo %p/../Inputs/duplicate_dwo_name/c.dwo -o %t 2>&1 \
|
|
RUN: | FileCheck --check-prefix=DWODWOS %s
|
|
|
|
RUN: not llvm-dwp %p/../Inputs/duplicate_dwo_name/c.dwo %p/../Inputs/duplicate_dwo_name/bc.dwp -o %t 2>&1 \
|
|
RUN: | FileCheck --check-prefix=DWO2DWP %s
|
|
|
|
RUN: not llvm-dwp %p/../Inputs/duplicate_dwo_name/ac.dwp %p/../Inputs/duplicate_dwo_name/c.dwo -o %t 2>&1 \
|
|
RUN: | FileCheck --check-prefix=DWO1DWP %s
|
|
|
|
Build from a, b, and c.c all containing a single void() func by the name of the file.
|
|
|
|
DWOS: error: duplicate DWO ID ({{.*}}) in 'c.c' and 'c.c'{{$}}
|
|
1DWP: error: duplicate DWO ID ({{.*}}) in 'c.c' (from '{{.*}}ac.dwp') and 'c.c'{{$}}
|
|
2DWP: error: duplicate DWO ID ({{.*}}) in 'c.c' and 'c.c' (from '{{.*}}bc.dwp'){{$}}
|
|
|
|
DWODWOS: error: duplicate DWO ID ({{.*}}) in 'c.c' (from 'c.dwo') and 'c.c' (from 'c.dwo'){{$}}
|
|
DWO1DWP: error: duplicate DWO ID ({{.*}}) in 'c.c' (from 'c.dwo' in '{{.*}}ac.dwp') and 'c.c' (from 'c.dwo'){{$}}
|
|
DWO2DWP: error: duplicate DWO ID ({{.*}}) in 'c.c' (from 'c.dwo') and 'c.c' (from 'c.dwo' in '{{.*}}bc.dwp'){{$}}
|