#FEATURE by exept
authorClaus Gittinger <cg@exept.de>
Fri, 26 Jul 2019 14:50:09 +0200
changeset 4462 7bf795ccac41
parent 4461 204091b9d849
child 4463 37e65d2ffde2
#FEATURE by exept class: Parser class definition changed: #primary_identifier
Parser.st
--- a/Parser.st	Fri Jul 26 14:42:04 2019 +0200
+++ b/Parser.st	Fri Jul 26 14:50:09 2019 +0200
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
               All Rights Reserved
@@ -45,7 +43,7 @@
 		PrevClassInstVarNames LazyCompilation FoldConstants
 		LineNumberInfo SuppressDoItCompilation ParseErrorSignal
 		AlreadyWarnedUnimplementedSelectorsPerReceiverClass
-		WarnAboutInlineObjects'
+		WarnAboutInlineObjects WarnAboutPossibleNameClashes'
 	poolDictionaries:''
 	category:'System-Compiler'
 !
@@ -8310,9 +8308,17 @@
                                 (nameSpaceGlobal privateClassesAt:varName asSymbol) isNil ifTrue:[
                                     rawName := rawName asSymbol.
                                     (Smalltalk at:rawName) notNil ifTrue:[
-                                        (self isFirstWarning:(#globalVsPrivateClass -> rawName)) ifTrue:[
-                                            self warning:('Possible name clash (global: ' , rawName , ' vs. private: ' , (nameSpace , '::', varName) , ') - assume global.')
-                                                 position:pos1 to:source position "tokenPosition-1".
+                                        ParserFlags warnAboutPossibleNameClashes ifTrue:[
+                                            (self isFirstWarning:(#globalVsPrivateClass -> rawName)) ifTrue:[
+                                                DoNotShowCompilerWarningAgainActionQuery handle:[:ex |
+                                                    "/ parserFlags warnAboutPossiblyUnimplementedSelectors:false.
+                                                    ParserFlags warnAboutPossibleNameClashes:false.
+                                                    ex proceed.
+                                                ] do:[
+                                                    self warning:('Possible name clash (global: ' , rawName , ' vs. private: ' , (nameSpace , '::', varName) , ') - assume global.')
+                                                         position:pos1 to:source position "tokenPosition-1".
+                                                ].
+                                            ].
                                         ].
                                         globlName := rawName.
                                     ] ifFalse:[