lld: restore upstream default for --[no-]allow-shlib-undefined
authornaddy <naddy@openbsd.org>
Tue, 28 Dec 2021 21:14:24 +0000 (21:14 +0000)
committernaddy <naddy@openbsd.org>
Tue, 28 Dec 2021 21:14:24 +0000 (21:14 +0000)
ok patrick@ kettenis@

gnu/llvm/lld/ELF/Driver.cpp
gnu/llvm/lld/docs/ld.lld.1

index 633cc3d..f2de4ec 100644 (file)
@@ -599,7 +599,7 @@ static void setUnresolvedSymbolPolicy(opt::InputArgList &args) {
                                      : UnresolvedPolicy::Warn;
   // -shared implies -unresolved-symbols=ignore-all because missing
   // symbols are likely to be resolved at runtime.
-  bool diagRegular = !config->shared, diagShlib = false;
+  bool diagRegular = !config->shared, diagShlib = !config->shared;
 
   for (const opt::Arg *arg : args) {
     switch (arg->getOption().getID()) {
index 86d47f2..bd67e58 100644 (file)
@@ -57,7 +57,7 @@ Do not error if a symbol is defined multiple times.
 The first definition will be used.
 .It Fl -allow-shlib-undefined
 Allow unresolved references in shared libraries.
-This option is enabled by default.
+This option is enabled by default when linking a shared library.
 .It Fl -apply-dynamic-relocs
 Apply link-time values for dynamic relocations.
 .It Fl -as-needed
@@ -312,7 +312,7 @@ Print a link map to
 Do not page align sections, link against static libraries.
 .It Fl -no-allow-shlib-undefined
 Do not allow unresolved references in shared libraries.
-This option is disabled by default.
+This option is enabled by default when linking an executable.
 .It Fl -no-as-needed
 Always set
 .Dv DT_NEEDED