Post-merge fixes. PPCCodeBlock refactoring.
authorJan Vrany <jan.vrany@fit.cvut.cz>
Mon, 27 Jul 2015 10:21:41 +0100
changeset 505 19d830b74322
parent 504 0fb1f0799fc1
child 506 e5d63143737f
Post-merge fixes. PPCCodeBlock refactoring.
compiler/PPCClassBuilder.st
compiler/PPCCodeBlock.st
compiler/PPCCompiler.st
compiler/PPCInlinedMethod.st
compiler/PPCMethod.st
compiler/benchmarks/Make.proto
compiler/benchmarks/abbrev.stc
compiler/benchmarks/bc.mak
compiler/benchmarks/stx_goodies_petitparser_compiler_benchmarks.st
compiler/tests/PPCTokenizingTest.st
compiler/tests/extras/Make.proto
compiler/tests/extras/abbrev.stc
compiler/tests/extras/bc.mak
compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st
islands/abbrev.stc
islands/stx_goodies_petitparser_islands.st
islands/tests/FirstFollowNextTests.st
islands/tests/Make.proto
islands/tests/abbrev.stc
islands/tests/bc.mak
islands/tests/stx_goodies_petitparser_islands_tests.st
--- a/compiler/PPCClassBuilder.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/PPCClassBuilder.st	Mon Jul 27 10:21:41 2015 +0100
@@ -104,9 +104,11 @@
 installMethods
     methodDictionary values do: [ :method |
         (compiledClass methodDictionary includesKey: method methodName) ifFalse: [ 
-            compiledClass compileSilently: method code classified: method category.
+            compiledClass compileSilently: method source classified: method category.
         ]
     ]
+
+    "Modified: / 24-07-2015 / 19:45:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 installVariables
--- a/compiler/PPCCodeBlock.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/PPCCodeBlock.st	Mon Jul 27 10:21:41 2015 +0100
@@ -122,26 +122,34 @@
 
 !PPCCodeBlock methodsFor:'printing and storing'!
 
-codeOn: aStream
+sourceOn:aStream 
     "Dumps generated code on given stream"
-
+    
     temporaries notEmpty ifTrue:[
-        ((Smalltalk respondsTo:#isSmalltalkX) and:[ Smalltalk isSmalltalkX ]) ifTrue:[ 
-            indentation * 4 timesRepeat: [ aStream nextPut: Character space  ].
-        ] ifFalse:[ 
-            indentation timesRepeat: [ aStream nextPut: Character tab  ].
+        ((Smalltalk respondsTo:#isSmalltalkX) and:[ Smalltalk isSmalltalkX ]) ifTrue:[
+            indentation * 4 timesRepeat:[
+                aStream nextPut:Character space
+            ].
+        ] ifFalse:[
+            indentation timesRepeat:[
+                aStream nextPut:Character tab
+            ].
         ].
-        aStream nextPut: $|.
-        temporaries do:[:e | aStream space; nextPutAll: e  ].
+        aStream nextPut:$|.
+        temporaries do:[:e | 
+            aStream
+                space;
+                nextPutAll:e
+        ].
         aStream space.
-        aStream nextPut: $|. 
+        aStream nextPut:$|.
         self nl.
-        "In Smalltalk/X, there should be a blank line after temporaries"
-        ((Smalltalk respondsTo:#isSmalltalkX) and:[ Smalltalk isSmalltalkX ]) ifTrue:[ 
+         "In Smalltalk/X, there should be a blank line after temporaries"
+        ((Smalltalk respondsTo:#isSmalltalkX) and:[ Smalltalk isSmalltalkX ]) ifTrue:[
             self nl.
         ].
     ].
-    aStream nextPutAll: buffer contents
+    aStream nextPutAll:buffer contents
 
     "Created: / 01-06-2015 / 21:26:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
--- a/compiler/PPCCompiler.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/PPCCompiler.st	Mon Jul 27 10:21:41 2015 +0100
@@ -624,8 +624,10 @@
 
 installMethods
     cache keysAndValuesDo: [ :key :method |
-        compiledParser compileSilently: method code classified: method category.
+        compiledParser compileSilently: method source classified: method category.
     ]
+
+    "Modified: / 24-07-2015 / 19:45:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 installVariables
--- a/compiler/PPCInlinedMethod.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/PPCInlinedMethod.st	Mon Jul 27 10:21:41 2015 +0100
@@ -13,17 +13,23 @@
 !PPCInlinedMethod methodsFor:'as yet unclassified'!
 
 call
-    ^ self code
-!
+    ^ self source
 
-code
-    ^ (String streamContents:[:s | buffer codeOn:s ]) trimRight
-
-    "Modified (format): / 01-06-2015 / 21:44:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 24-07-2015 / 19:45:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 isInline
     ^ true
+!
+
+source
+    ^ source isString ifTrue:[ 
+        source
+    ] ifFalse:[ 
+        (String streamContents:[:s | source sourceOn:s ]) trimRight
+    ].
+
+    "Created: / 24-07-2015 / 19:46:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !PPCInlinedMethod methodsFor:'code generation - variables'!
--- a/compiler/PPCMethod.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/PPCMethod.st	Mon Jul 27 10:21:41 2015 +0100
@@ -3,7 +3,7 @@
 "{ NameSpace: Smalltalk }"
 
 Object subclass:#PPCMethod
-	instanceVariableNames:'buffer id variableForReturn category profile'
+	instanceVariableNames:'selector source category variableForReturn'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'PetitCompiler-Compiler-Codegen'
@@ -20,10 +20,6 @@
 
 !PPCMethod methodsFor:'accessing'!
 
-body
-    ^ buffer contents
-!
-
 bridge
     ^ PPCBridge on: self methodName.
 !
@@ -39,53 +35,55 @@
     category := value
 !
 
-code
-    ^ String streamContents: [ :s |
-        s nextPutAll: self methodName; cr.
-        buffer codeOn: s.    
-    ]
-
-    "Modified: / 01-06-2015 / 21:24:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
 id: value
-    id := value
+    selector := value
 !
 
 indentationLevel
-    ^ buffer indentationLevel
+    ^ source indentationLevel
 
     "Created: / 01-06-2015 / 21:38:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 indentationLevel: anInteger
-    buffer indentationLevel: anInteger
+    source indentationLevel: anInteger
 
     "Created: / 01-06-2015 / 21:38:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 methodName
-    ^ id
+    ^ selector
 !
 
-profile
-    ^ profile
+source
+    ^ source isString ifTrue:[ 
+        source
+    ] ifFalse:[ 
+        String streamContents: [ :s |
+            s nextPutAll: self methodName; cr.
+            source sourceOn:s.    
+        ]
+    ].
+
+    "Created: / 24-07-2015 / 19:46:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
-profile: aBoolean
-    profile := aBoolean 
+source: aString
+    source := aString
+
+    "Created: / 24-07-2015 / 19:48:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !PPCMethod methodsFor:'as yet unclassified'!
 
 add: string
-    buffer add: string
+    source add: string
 
     "Modified: / 01-06-2015 / 21:09:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 addOnLine: string
-    buffer addOnLine: string
+    source addOnLine: string
 
     "Modified: / 01-06-2015 / 21:09:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
@@ -96,14 +94,14 @@
 
 profilingBegin
     self profile ifTrue: [ 
- 								^ '  context methodInvoked: #', id, '.'	
+ 								^ '  context methodInvoked: #', selector, '.'	
     ].
     ^ ''
 !
 
 profilingEnd
     self profile ifTrue: [ 
- 								^ '  context methodFinished: #', id, '.'	
+ 								^ '  context methodFinished: #', selector, '.'	
     ].
     ^ ''
 ! !
@@ -111,7 +109,7 @@
 !PPCMethod methodsFor:'code generation'!
 
 code: aStringOrBlockOrRBParseNode
-    buffer code: aStringOrBlockOrRBParseNode.
+    source code: aStringOrBlockOrRBParseNode.
 
     "Created: / 01-06-2015 / 22:31:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified (format): / 01-06-2015 / 23:50:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -120,18 +118,18 @@
 codeBlock: contents
     | outerBlock innerBlock |
 
-    outerBlock := buffer.
+    outerBlock := source.
     innerBlock := PPCCodeBlock new.
     innerBlock indentationLevel: outerBlock indentationLevel + 1.  
     [ 
         outerBlock addOnLine:'['.
-        buffer := innerBlock.
+        source := innerBlock.
         self code: contents.
     ] ensure:[
         outerBlock 
-            code: (String streamContents:[:s | innerBlock codeOn: s]);
+            code: (String streamContents:[:s | innerBlock sourceOn:s]);
             add:']'.
-        buffer := outerBlock.
+        source := outerBlock.
     ]
 
     "Created: / 01-06-2015 / 22:33:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -141,20 +139,20 @@
 !PPCMethod methodsFor:'code generation - indenting'!
 
 dedent
-    buffer dedent
+    source dedent
 
     "Created: / 01-06-2015 / 21:32:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 indent
-    buffer indent
+    source indent
 
     "Created: / 01-06-2015 / 21:32:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 nl
 
-    buffer nl
+    source nl
 
     "Created: / 01-06-2015 / 21:52:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
@@ -189,7 +187,7 @@
     "Allocate a new variable with (preferably) given name.
      Returns a real variable name that should be used."
 
-    ^ buffer allocateTemporaryVariableNamed: preferredName
+    ^ source allocateTemporaryVariableNamed: preferredName
 
     "Created: / 23-04-2015 / 17:37:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 01-06-2015 / 21:04:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
@@ -215,7 +213,7 @@
 !PPCMethod methodsFor:'initialization'!
 
 initialize
-    buffer := PPCCodeBlock new.
+    source := PPCCodeBlock new.
 
     "Modified: / 01-06-2015 / 21:33:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
@@ -227,7 +225,7 @@
 
     super printOn:aStream.
     aStream nextPutAll:' id: '.
-    id printOn:aStream.
+    selector printOn:aStream.
 
     "Modified: / 23-04-2015 / 12:32:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
--- a/compiler/benchmarks/Make.proto	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/benchmarks/Make.proto	Mon Jul 27 10:21:41 2015 +0100
@@ -34,7 +34,7 @@
 # add the path(es) here:,
 # ********** OPTIONAL: MODIFY the next lines ***
 # LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/java -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/parser -I$(INCLUDE_TOP)/stx/libbasic
+LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/java -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk/tests -I$(INCLUDE_TOP)/stx/goodies/petitparser/tests -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/parser -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libbasic
 
 
 # if you need any additional defines for embedded C code,
@@ -104,8 +104,13 @@
 	cd ../../../../libbasic && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../refactoryBrowser/parser && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../ && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../parsers/smalltalk && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../parsers/smalltalk/tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 
 
 
--- a/compiler/benchmarks/abbrev.stc	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/benchmarks/abbrev.stc	Mon Jul 27 10:21:41 2015 +0100
@@ -3,5 +3,5 @@
 # it provides information about a classes filename, category and especially namespace.
 PPCBenchmark PPCBenchmark stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Core' 0
 PPCSmalltalkNoopParser PPCSmalltalkNoopParser stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Parsers' 0
+PPCSmalltalkNoopParserTests PPCSmalltalkNoopParserTests stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Parsers-Tests' 1
 stx_goodies_petitparser_compiler_benchmarks stx_goodies_petitparser_compiler_benchmarks stx:goodies/petitparser/compiler/benchmarks '* Projects & Packages *' 3
-PPCSmalltalkNoopParserTests PPCSmalltalkNoopParserTests stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Parsers-Tests' 1
--- a/compiler/benchmarks/bc.mak	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/benchmarks/bc.mak	Mon Jul 27 10:21:41 2015 +0100
@@ -35,7 +35,7 @@
 
 
 
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\java -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\libbasic
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\java -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk\tests -I$(INCLUDE_TOP)\stx\goodies\petitparser\tests -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libbasic
 LOCALDEFINES=
 
 STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES)  -varPrefix=$(LIBNAME)
@@ -54,8 +54,13 @@
 	pushd ..\..\..\..\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\refactoryBrowser\parser & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\.. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\parsers\smalltalk & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\parsers\smalltalk\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 
 
 
--- a/compiler/benchmarks/stx_goodies_petitparser_compiler_benchmarks.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/benchmarks/stx_goodies_petitparser_compiler_benchmarks.st	Mon Jul 27 10:21:41 2015 +0100
@@ -61,7 +61,10 @@
     ^ #(
         #'stx:goodies/petitparser'    "PPCompositeParser - superclass of PPCSmalltalkNoopParser"
         #'stx:goodies/petitparser/parsers/smalltalk'    "PPSmalltalkGrammar - superclass of PPCSmalltalkNoopParser"
-        #'stx:libbasic'    "Autoload - superclass of PPCSmalltalkNoopParserTests"
+        #'stx:goodies/petitparser/parsers/smalltalk/tests'    "PPSmalltalkGrammarTests - superclass of PPCSmalltalkNoopParserTests"
+        #'stx:goodies/petitparser/tests'    "PPAbstractParserTest - superclass of PPCSmalltalkNoopParserTests"
+        #'stx:goodies/sunit'    "TestAsserter - superclass of PPCSmalltalkNoopParserTests"
+        #'stx:libbasic'    "LibraryDefinition - superclass of stx_goodies_petitparser_compiler_benchmarks"
     )
 !
 
@@ -105,8 +108,8 @@
         "<className> or (<className> attributes...) in load order"
         PPCBenchmark
         PPCSmalltalkNoopParser
+        (PPCSmalltalkNoopParserTests autoload)
         #'stx_goodies_petitparser_compiler_benchmarks'
-        (PPCSmalltalkNoopParserTests autoload)
     )
 !
 
--- a/compiler/tests/PPCTokenizingTest.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/tests/PPCTokenizingTest.st	Mon Jul 27 10:21:41 2015 +0100
@@ -22,11 +22,13 @@
 
 cleanClass
     | parserClass |
-    parserClass := (Smalltalk at: arguments name ifAbsent: [nil]).
+    parserClass := (Smalltalk at: arguments parserName ifAbsent: [nil]).
     parserClass notNil ifTrue:[ 
         self flag: 'uncomment'.
-"		parserClass removeFromSystem"
+"               parserClass removeFromSystem"
     ].
+
+    "Modified: / 24-07-2015 / 19:50:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 context	
--- a/compiler/tests/extras/Make.proto	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/tests/extras/Make.proto	Mon Jul 27 10:21:41 2015 +0100
@@ -108,6 +108,7 @@
 	cd ../../../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../parsers/java && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 
 
 
--- a/compiler/tests/extras/abbrev.stc	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/tests/extras/abbrev.stc	Mon Jul 27 10:21:41 2015 +0100
@@ -9,8 +9,11 @@
 PPCompiledExpressionGrammarResource PPCompiledExpressionGrammarResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
 PPCompiledExpressionGrammarTest PPCompiledExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
 PPCompiledJavaResource PPCompiledJavaResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1
+PPCompiledJavaSyntaxTest PPCompiledJavaSyntaxTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1
 PPCompiledSmalltalkGrammarResource PPCompiledSmalltalkGrammarResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
 PPCompiledSmalltalkGrammarTests PPCompiledSmalltalkGrammarTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCompiledSmalltalkParserResource PPCompiledSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCompiledSmalltalkParserTests PPCompiledSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
 PPExpressionGrammar PPExpressionGrammar stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 0
 PPExpressionGrammarTest PPExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
 PPLL1ExpressionGrammar PPLL1ExpressionGrammar stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 0
@@ -21,14 +24,11 @@
 PPTokenizedLL1ExpressionGrammarTest PPTokenizedLL1ExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
 PPTokenizedSmalltalkGrammarResource PPTokenizedSmalltalkGrammarResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
 PPTokenizedSmalltalkGrammarTests PPTokenizedSmalltalkGrammarTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPTokenizedSmalltalkParserResource PPTokenizedSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPTokenizedSmalltalkParserTests PPTokenizedSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
 stx_goodies_petitparser_compiler_tests_extras stx_goodies_petitparser_compiler_tests_extras stx:goodies/petitparser/compiler/tests/extras '* Projects & Packages *' 3
 PPCompiledExpressionsVerificationTest PPCompiledExpressionsVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
 PPCompiledSmalltalkVerificationTest PPCompiledSmalltalkVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
 PPTokenizedExpressionsVerificationTest PPTokenizedExpressionsVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPTokenizedSmalltalkParserVerificationTest PPTokenizedSmalltalkParserVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
 PPTokenizedSmalltalkVerificationTest PPTokenizedSmalltalkVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCompiledJavaSyntaxTest PPCompiledJavaSyntaxTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1
-PPCompiledSmalltalkParserResource PPCompiledSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCompiledSmalltalkParserTests PPCompiledSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPTokenizedSmalltalkParserResource PPTokenizedSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPTokenizedSmalltalkParserTests PPTokenizedSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPTokenizedSmalltalkParserVerificationTest PPTokenizedSmalltalkParserVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
--- a/compiler/tests/extras/bc.mak	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/tests/extras/bc.mak	Mon Jul 27 10:21:41 2015 +0100
@@ -58,6 +58,7 @@
 	pushd ..\..\..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\parsers\java & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 
 
 
--- a/compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st	Mon Jul 27 10:21:41 2015 +0100
@@ -84,9 +84,10 @@
 
     ^ #(
         #'stx:goodies/petitparser'    "PPCompositeParser - superclass of PPExpressionGrammar"
+        #'stx:goodies/petitparser/parsers/java'    "PPJavaLexiconTest - superclass of PPCompiledJavaSyntaxTest"
         #'stx:goodies/petitparser/tests'    "PPAbstractParserTest - superclass of PPCCompiledJavaVerificationTest"
         #'stx:goodies/sunit'    "TestAsserter - superclass of PPCCompiledJavaVerificationTest"
-        #'stx:libbasic'    "Autoload - superclass of PPCompiledJavaSyntaxTest"
+        #'stx:libbasic'    "LibraryDefinition - superclass of stx_goodies_petitparser_compiler_tests_extras"
     )
 !
 
@@ -102,7 +103,6 @@
 
     ^ #(
         #'stx:goodies/petitparser/compiler'    "PPCArguments - referenced by PPCSmalltalkTests>>setUp"
-        #'stx:goodies/petitparser/parsers/java'    "PPJavaSyntax - referenced by PPCCompiledJavaVerificationTest>>javaSyntax"
         #'stx:goodies/petitparser/parsers/smalltalk'    "PPSmalltalkGrammar - referenced by PPCSmalltalkVerificationTest>>smalltalkGrammar"
         #'stx:libbasic2'    "Random - referenced by PPCResources>>expressionOfSize:stream:"
     )
@@ -136,8 +136,11 @@
         PPCompiledExpressionGrammarResource
         PPCompiledExpressionGrammarTest
         PPCompiledJavaResource
+        (PPCompiledJavaSyntaxTest autoload)
         PPCompiledSmalltalkGrammarResource
         PPCompiledSmalltalkGrammarTests
+        (PPCompiledSmalltalkParserResource autoload)
+        (PPCompiledSmalltalkParserTests autoload)
         PPExpressionGrammar
         PPExpressionGrammarTest
         PPLL1ExpressionGrammar
@@ -148,17 +151,14 @@
         PPTokenizedLL1ExpressionGrammarTest
         PPTokenizedSmalltalkGrammarResource
         PPTokenizedSmalltalkGrammarTests
+        (PPTokenizedSmalltalkParserResource autoload)
+        (PPTokenizedSmalltalkParserTests autoload)
         #'stx_goodies_petitparser_compiler_tests_extras'
         PPCompiledExpressionsVerificationTest
         PPCompiledSmalltalkVerificationTest
         PPTokenizedExpressionsVerificationTest
+        (PPTokenizedSmalltalkParserVerificationTest autoload)
         PPTokenizedSmalltalkVerificationTest
-        (PPCompiledJavaSyntaxTest autoload)
-        (PPCompiledSmalltalkParserResource autoload)
-        (PPCompiledSmalltalkParserTests autoload)
-        (PPTokenizedSmalltalkParserResource autoload)
-        (PPTokenizedSmalltalkParserTests autoload)
-        (PPTokenizedSmalltalkParserVerificationTest autoload)
     )
 !
 
--- a/islands/abbrev.stc	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/abbrev.stc	Mon Jul 27 10:21:41 2015 +0100
@@ -1,12 +1,12 @@
 # automagically generated by the project definition
 # this file is needed for stc to be able to compile modules independently.
 # it provides information about a classes filename, category and especially namespace.
+JavaParser JavaParser stx:goodies/petitparser/islands 'PetitIslands-Examples' 0
 PPInputEnds PPInputEnds stx:goodies/petitparser/islands 'PetitIslands-Parsers' 0
 PPIsland PPIsland stx:goodies/petitparser/islands 'PetitIslands-Parsers' 0
 PPNonEmptyParser PPNonEmptyParser stx:goodies/petitparser/islands 'PetitIslands-Parsers' 0
 PPWater PPWater stx:goodies/petitparser/islands 'PetitIslands-Parsers' 0
+XmlFeedParser XmlFeedParser stx:goodies/petitparser/islands 'PetitIslands-Examples' 0
 stx_goodies_petitparser_islands stx_goodies_petitparser_islands stx:goodies/petitparser/islands '* Projects & Packages *' 3
 PPMemoizingIsland PPMemoizingIsland stx:goodies/petitparser/islands 'PetitIslands-Parsers' 0
-JavaParser JavaParser stx:goodies/petitparser/islands 'PetitIslands-Examples' 0
 RobustXmlFeedParser RobustXmlFeedParser stx:goodies/petitparser/islands 'PetitIslands-Examples' 0
-XmlFeedParser XmlFeedParser stx:goodies/petitparser/islands 'PetitIslands-Examples' 0
--- a/islands/stx_goodies_petitparser_islands.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/stx_goodies_petitparser_islands.st	Mon Jul 27 10:21:41 2015 +0100
@@ -68,7 +68,7 @@
 
     ^ #(
         #'stx:goodies/petitparser'    "PPChoiceParser - extended"
-        #'stx:libbasic'    "Autoload - superclass of JavaParser"
+        #'stx:libbasic'    "LibraryDefinition - superclass of stx_goodies_petitparser_islands"
     )
 !
 
@@ -107,15 +107,15 @@
 
     ^ #(
         "<className> or (<className> attributes...) in load order"
+        (JavaParser autoload)
         PPInputEnds
         PPIsland
         PPNonEmptyParser
         PPWater
+        (XmlFeedParser autoload)
         #'stx_goodies_petitparser_islands'
         PPMemoizingIsland
-        (JavaParser autoload)
         (RobustXmlFeedParser autoload)
-        (XmlFeedParser autoload)
     )
 !
 
--- a/islands/tests/FirstFollowNextTests.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/tests/FirstFollowNextTests.st	Mon Jul 27 10:21:41 2015 +0100
@@ -9,6 +9,7 @@
 	category:'PetitIslands-Tests'
 !
 
+
 !FirstFollowNextTests methodsFor:'support'!
 
 assert: set allMatches: string
@@ -1055,3 +1056,10 @@
 
 ! !
 
+!FirstFollowNextTests class methodsFor:'documentation'!
+
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
+! !
+
--- a/islands/tests/Make.proto	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/tests/Make.proto	Mon Jul 27 10:21:41 2015 +0100
@@ -34,7 +34,7 @@
 # add the path(es) here:,
 # ********** OPTIONAL: MODIFY the next lines ***
 # LOCALINCLUDES=-Ifoo -Ibar
-LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/libbasic
+LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/islands -I$(INCLUDE_TOP)/stx/goodies/petitparser/tests -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libbasic
 
 
 # if you need any additional defines for embedded C code,
@@ -102,6 +102,12 @@
 # build all mandatory prerequisite packages (containing superclasses) for this package
 prereq:
 	cd ../../../../libbasic && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../ && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 
 
 
--- a/islands/tests/abbrev.stc	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/tests/abbrev.stc	Mon Jul 27 10:21:41 2015 +0100
@@ -1,10 +1,10 @@
 # automagically generated by the project definition
 # this file is needed for stc to be able to compile modules independently.
 # it provides information about a classes filename, category and especially namespace.
-stx_goodies_petitparser_islands_tests stx_goodies_petitparser_islands_tests stx:goodies/petitparser/islands/tests '* Projects & Packages *' 3
 FirstFollowNextTests FirstFollowNextTests stx:goodies/petitparser/islands/tests 'PetitIslands-Tests' 1
 JavaParserTest JavaParserTest stx:goodies/petitparser/islands/tests 'PetitIslands-Examples' 1
 PPIslandTest PPIslandTest stx:goodies/petitparser/islands/tests 'PetitIslands-Tests' 1
-PPMemoizingIslandTest PPMemoizingIslandTest stx:goodies/petitparser/islands/tests 'PetitIslands-Tests' 1
 RobustXmlFeedParserTest RobustXmlFeedParserTest stx:goodies/petitparser/islands/tests 'PetitIslands-Examples' 1
 XmlFeedParserTest XmlFeedParserTest stx:goodies/petitparser/islands/tests 'PetitIslands-Examples' 1
+stx_goodies_petitparser_islands_tests stx_goodies_petitparser_islands_tests stx:goodies/petitparser/islands/tests '* Projects & Packages *' 3
+PPMemoizingIslandTest PPMemoizingIslandTest stx:goodies/petitparser/islands/tests 'PetitIslands-Tests' 1
--- a/islands/tests/bc.mak	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/tests/bc.mak	Mon Jul 27 10:21:41 2015 +0100
@@ -35,7 +35,7 @@
 
 
 
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\libbasic
+LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\islands -I$(INCLUDE_TOP)\stx\goodies\petitparser\tests -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libbasic
 LOCALDEFINES=
 
 STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES)  -varPrefix=$(LIBNAME)
@@ -52,6 +52,12 @@
 # build all mandatory prerequisite packages (containing superclasses) for this package
 prereq:
 	pushd ..\..\..\..\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\.. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 
 
 
--- a/islands/tests/stx_goodies_petitparser_islands_tests.st	Fri Jul 24 19:42:09 2015 +0100
+++ b/islands/tests/stx_goodies_petitparser_islands_tests.st	Mon Jul 27 10:21:41 2015 +0100
@@ -56,7 +56,9 @@
      by searching along the inheritance chain of all of my classes."
 
     ^ #(
-        #'stx:libbasic'    "Autoload - superclass of FirstFollowNextTests"
+        #'stx:goodies/petitparser/tests'    "PPAbstractParserTest - superclass of JavaParserTest"
+        #'stx:goodies/sunit'    "TestAsserter - superclass of FirstFollowNextTests"
+        #'stx:libbasic'    "LibraryDefinition - superclass of stx_goodies_petitparser_islands_tests"
     )
 !
 
@@ -71,6 +73,8 @@
      by searching all classes (and their packages) which are referenced by my classes."
 
     ^ #(
+        #'stx:goodies/petitparser'    "PPContext - referenced by JavaParserTest>>context"
+        #'stx:goodies/petitparser/islands'    "JavaParser - referenced by JavaParserTest>>parserClass"
     )
 !
 
@@ -94,13 +98,13 @@
 
     ^ #(
         "<className> or (<className> attributes...) in load order"
-        #'stx_goodies_petitparser_islands_tests'
         (FirstFollowNextTests autoload)
         (JavaParserTest autoload)
         (PPIslandTest autoload)
-        (PPMemoizingIslandTest autoload)
         (RobustXmlFeedParserTest autoload)
         (XmlFeedParserTest autoload)
+        #'stx_goodies_petitparser_islands_tests'
+        (PPMemoizingIslandTest autoload)
     )
 !