Open
Description
The following tests fail when -objc_relative_method_lists
are added. (commit bb4aeb6)
MachO/objc-category-conflicts.s
MachO/objc-category-merging-complete-test.s
MachO/objc-category-merging-erase-objc-name-test.s
MachO/objc-category-merging-minimal.s
All cases involve an invalid pointer cast at certain point.
For example, in objc-category-conflicts.s
gets the following error:
RUN: at line 15: /home/peterrong/llvm-project/build/bin/llvm-mc -filetype=obj -triple=x86_64-apple-macos11.0 -I /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/klass-with-no-rodata.s -o /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/klass-with-no-rodata.o
+ /home/peterrong/llvm-project/build/bin/llvm-mc -filetype=obj -triple=x86_64-apple-macos11.0 -I /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/klass-with-no-rodata.s -o /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/klass-with-no-rodata.o
RUN: at line 16: ld64.lld -arch x86_64 -platform_version macos 11.0 11.0 -syslibroot /home/peterrong/llvm-project/lld/test/MachO/Inputs/MacOSX.sdk -lSystem -fatal_warnings -dylib -lobjc /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/klass.o -o /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/libklass.dylib
+ ld64.lld -arch x86_64 -platform_version macos 11.0 11.0 -syslibroot /home/peterrong/llvm-project/lld/test/MachO/Inputs/MacOSX.sdk -lSystem -fatal_warnings -dylib -lobjc /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/klass.o -o /home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.tmp/libklass.dylib
ld64.lld: /home/peterrong/llvm-project/llvm/include/llvm/ADT/PointerUnion.h:156: T llvm::PointerUnion<PTs>::get() const [with T = lld::macho::Symbol*; PTs = {lld::macho::Symbol*, lld::macho::InputSection*}]: Assertion `isa<T>(*this) && "Invalid accessor called"' failed.
/home/peterrong/llvm-project/build/tools/lld/test/MachO/Output/objc-category-conflicts.s.script: line 19: 378103 Aborted