Skip to content

Commit

Permalink
[ELF] --no-undefined-warning: demote error to warning for release/16.x
Browse files Browse the repository at this point in the history
Close #61208
  • Loading branch information
MaskRay authored and tstellar committed Mar 8, 2023
1 parent 35232f3 commit c1949c6
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
4 changes: 2 additions & 2 deletions lld/ELF/SymbolTable.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -277,8 +277,8 @@ void SymbolTable::scanVersionScript() {
pat.isExternCpp, /*hasWildCard=*/false},
id, ver, /*includeNonDefault=*/true);
if (!found && !config->undefinedVersion)
errorOrWarn("version script assignment of '" + ver + "' to symbol '" +
pat.name + "' failed: symbol not defined");
warn("version script assignment of '" + ver + "' to symbol '" +
pat.name + "' failed: symbol not defined");
};
for (SymbolVersion &pat : v.nonLocalPatterns)
if (!pat.hasWildcard)
Expand Down
6 changes: 3 additions & 3 deletions lld/test/ELF/version-script-noundef.s
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
# RUN: not ld.lld --version-script %t.script -shared %t.o -o /dev/null \
# RUN: --fatal-warnings 2>&1 | FileCheck -check-prefix=ERR1 %s
# RUN: ld.lld --version-script %t.script -shared --undefined-version %t.o -o %t.so
# RUN: not ld.lld --version-script %t.script -shared --no-undefined-version \
# RUN: ld.lld --version-script %t.script -shared --no-undefined-version \
# RUN: %t.o -o %t.so 2>&1 | FileCheck -check-prefix=ERR1 %s
# ERR1: version script assignment of 'VERSION_1.0' to symbol 'bar' failed: symbol not defined

# RUN: echo "VERSION_1.0 { global: und; };" > %t2.script
# RUN: not ld.lld --version-script %t2.script -shared --no-undefined-version \
# RUN: ld.lld --version-script %t2.script -shared --no-undefined-version \
# RUN: %t.o -o %t.so 2>&1 | FileCheck -check-prefix=ERR2 %s
# ERR2: version script assignment of 'VERSION_1.0' to symbol 'und' failed: symbol not defined

# RUN: echo "VERSION_1.0 { local: und; };" > %t3.script
# RUN: not ld.lld --version-script %t3.script -shared --no-undefined-version \
# RUN: ld.lld --version-script %t3.script -shared --no-undefined-version \
# RUN: %t.o -o %t.so 2>&1 | FileCheck -check-prefix=ERR3 %s
# ERR3: version script assignment of 'local' to symbol 'und' failed: symbol not defined

Expand Down

0 comments on commit c1949c6

Please sign in to comment.