blob: a4712060cc155e7bdce28c8db8500b543f030906 [file] [log] [blame]
# Test if the linker can properly parse the .drectve section contents.
# "drectve.obj" contains "/defaultlib:vars /subsystem:console,42.195 -?foo"
# in its .drectve section.
# RUN: yaml2obj %p/Inputs/drectve.obj.yaml > %t.obj
#
# RUN: lld -flavor link /out:%t.exe /entry:main /opt:noref /libpath:%p/Inputs \
# RUN: -- %t.obj >& %t.log
#
# RUN: llvm-readobj -file-headers %t.exe | FileCheck -check-prefix=HEADER %s
# RUN: llvm-objdump -p %t.exe | FileCheck -check-prefix=IMPORT %s
# RUN: echo >> %t.log
# RUN: FileCheck -check-prefix=ERROR %s < %t.log
HEADER: MajorOperatingSystemVersion: 42
HEADER: MinorOperatingSystemVersion: 195
IMPORT: DLL Name: vars.dll
IMPORT-NEXT: Hint/Ord Name
IMPORT-NEXT: 0 _name_with_underscore
IMPORT-NEXT: 1 fn
IMPORT-NEXT: 1
ERROR-NOT: foo
# drectve2.obj contains "/include:foo".
# RUN: yaml2obj %p/Inputs/drectve2.obj.yaml > %t2.obj
# RUN: not lld -flavor link /out:%t2.exe /entry:main -- %t2.obj >& %t2.log
# RUN: FileCheck -check-prefix=UNDEF %s < %t2.log
UNDEF: Undefined symbol: {{.*}}: foo