]> git.saurik.com Git - apple/ld64.git/blobdiff - src/ld/passes/dylibs.cpp
ld64-274.2.tar.gz
[apple/ld64.git] / src / ld / passes / dylibs.cpp
index f77f5cd6f50753b00fd9ff6b1d3778a442cab146..7edc85ccc1beb6eb3b348ebdbc4aa2bfde3716d2 100644 (file)
@@ -94,9 +94,11 @@ void doPass(const Options& opts, ld::Internal& state)
                                                targetIsWeakImport = fit->weakImport;
                                                break;
                     default:
-                        break;   
+                        break;
                                }
                                if ( (target != NULL) && (target->definition() == ld::Atom::definitionProxy) ) {
+                                       if ( targetIsWeakImport && !opts.allowWeakImports() )
+                                               throwf("weak import of symbol '%s' not supported because of option: -no_weak_imports", target->name());
                                        ld::Atom::WeakImportState curWI = target->weakImportState();
                                        if ( curWI == ld::Atom::weakImportUnset ) {
                                                // first use of this proxy, set weak-import based on this usage