ProjectDefinition.st
changeset 23746 c67b523eb888
parent 23681 8f017d9c2ed6
child 23850 4189eb0fe095
--- a/ProjectDefinition.st	Tue Feb 19 16:09:11 2019 +0100
+++ b/ProjectDefinition.st	Tue Feb 19 16:25:15 2019 +0100
@@ -2953,7 +2953,6 @@
     "Created: / 23-01-2007 / 19:08:27 / cg"
 ! !
 
-
 !ProjectDefinition class methodsFor:'description - project information'!
 
 applicationAdditionalIconFileNames
@@ -5064,7 +5063,6 @@
     ^ self subProjectMakeCallsUsing:'call vcmake %1 %2'.
 ! !
 
-
 !ProjectDefinition class methodsFor:'file templates'!
 
 autopackage_default_dot_apspec
@@ -5576,14 +5574,26 @@
 checkForLoad
     "raise an error, if the package is not suitable for loading"
 
+    |m|
+    
     self supportedOnPlatform ifFalse:[
         PackageNotCompatibleError 
             raiseRequestWith:self package
             errorString:(self reasonForNotSupportedOnPlatform)
     ].
 
+    "/ check for an uncompiled method in the dictionary
+    "/ happens if an incompatible library is loaded.
+    (m := self class compiledMethodAt:#mandatoryPreRequisites) notNil ifTrue:[
+        m isExecutable ifFalse:[
+            PackageNotCompatibleError 
+                raiseRequestWith:self package
+                errorString:'package is incompatible (needs recompilation)'
+        ].
+    ].
+
     "Modified (comment): / 24-02-2017 / 10:06:44 / cg"
-    "Modified: / 07-02-2019 / 14:25:31 / Claus Gittinger"
+    "Modified: / 19-02-2019 / 16:24:25 / Claus Gittinger"
 !
 
 ensureFullyLoaded