--- a/ProjectChecker.st Sat Mar 30 16:40:06 2013 +0100
+++ b/ProjectChecker.st Sat Mar 30 17:01:17 2013 +0100
@@ -94,12 +94,6 @@
"Created: / 11-01-2012 / 16:46:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
-!ProjectChecker class methodsFor:'others'!
-
-version_CVS
- ^ '$Header: /cvs/stx/stx/libbasic3/ProjectChecker.st,v 1.15 2013-03-29 23:56:05 cg Exp $'
-! !
-
!ProjectChecker methodsFor:'accessing'!
checkExtensionsOnly:aBoolean
@@ -351,9 +345,25 @@
].
(extensionsListed \ extensionsPresent) do:[:clsAndSel|
- self addProblem:
- (ProjectProblem newExtensionMethodListedButDoesNotExist
- className: clsAndSel first selector: clsAndSel second).
+ |cls clsName selector|
+
+ clsName := clsAndSel first.
+ selector := clsAndSel second.
+ (cls := Smalltalk classNamed: clsName) isNil ifTrue:[
+ self addProblem:
+ (ProjectProblem newExtensionMethodsClassDoesNotExist
+ className: clsName selector: selector).
+ ] ifFalse:[
+ (cls compiledMethodAt:selector) isNil ifTrue:[
+ self addProblem:
+ (ProjectProblem newExtensionMethodListedButDoesNotExist
+ className: clsName selector: selector).
+ ] ifFalse:[
+ self addProblem:
+ (ProjectProblem newExtensionMethodListedButInDifferentPackage
+ className: clsName selector: selector).
+ ]
+ ]
].
(extensionsPresent \ extensionsListed) do:[:clsAndSel|
@@ -597,7 +607,11 @@
!ProjectChecker class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic3/ProjectChecker.st,v 1.15 2013-03-29 23:56:05 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic3/ProjectChecker.st,v 1.16 2013-03-30 16:01:17 cg Exp $'
+!
+
+version_CVS
+ ^ '$Header: /cvs/stx/stx/libbasic3/ProjectChecker.st,v 1.16 2013-03-30 16:01:17 cg Exp $'
!
version_SVN