Fixes - all test pass jk_new_structure
authorvranyj1
Thu, 15 Mar 2012 11:23:37 +0000
branchjk_new_structure
changeset 1420 574d4bda2162
parent 1419 ec8c810acddb
child 1421 d68e361680e9
Fixes - all test pass
src/tools/JavaBlockParser.st
src/tools/JavaParserI.st
src/tools/JavaParserII.st
src/tools/JavaParserIITests.st
src/tools/JavaScanner.st
src/tools/Make.proto
src/tools/Make.spec
src/tools/abbrev.stc
src/tools/bc.mak
src/tools/libInit.cc
src/tools/tools.rc
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/tools/JavaBlockParser.st	Thu Mar 15 11:23:37 2012 +0000
@@ -0,0 +1,52 @@
+"{ Package: 'stx:libjava/tools' }"
+
+PPParser subclass:#JavaBlockParser
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Languages-Java-Parser'
+!
+
+
+!JavaBlockParser methodsFor:'parsing'!
+
+parseOn: aStream
+
+    | openCount peekC |
+
+    aStream skipSeparators.
+    peekC := aStream uncheckedPeek.
+    peekC ~~ ${ ifTrue:[
+        ^ PPFailure message: ('unexpected char (got ', peekC, ' expecting { )') at: aStream position
+    ].
+    openCount := 1.
+    aStream next.
+    [ openCount ~~ 0 ] whileTrue:[
+        aStream atEnd ifTrue:[
+            ^ PPFailure message: ('unexpected end of input') at: aStream position
+        ].
+        peekC := aStream next.
+        peekC == ${ ifTrue:[
+            openCount := openCount + 1
+        ] ifFalse:[
+            peekC == $} ifTrue:[
+                openCount := openCount - 1
+            ].
+        ].
+    ].
+    "Should return contents..."
+    ^nil
+
+    "
+        ( JavaBlockParser new trim , ';' asParser trim) parse: '{ } ;'
+
+    "
+
+    "Modified: / 15-03-2012 / 10:34:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!JavaBlockParser class methodsFor:'documentation'!
+
+version_SVN
+    ^ '$Id$'
+! !
--- a/src/tools/JavaParserI.st	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/JavaParserI.st	Thu Mar 15 11:23:37 2012 +0000
@@ -65,7 +65,10 @@
 
 block
     "Do no parse content of the block"
-    ^ '{' asParser , '}' asParser
+
+    ^JavaBlockParser new    
+
+"/    ^ (self tokenFor: '{') , (self tokenFor: '}')
 
     "Created: / 11-03-2012 / 13:20:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
@@ -639,6 +642,16 @@
     "Created: / 12-03-2012 / 16:51:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
+!JavaParserI methodsFor:'parsing'!
+
+parse: anObject
+    "Parse anObject with the receiving parser and answer the parse-result or an instance of PPFailure."
+
+    ^super parse: (JavaScanner for: anObject readStream)
+
+    "Created: / 15-03-2012 / 11:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
 !JavaParserI methodsFor:'querying'!
 
 productionAt: aSymbol ifAbsent: aBlock
--- a/src/tools/JavaParserII.st	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/JavaParserII.st	Thu Mar 15 11:23:37 2012 +0000
@@ -126,7 +126,9 @@
 
 compilationUnit 
 
-	^ (annotations optional, packageDeclaration) optional , importDeclaration star , typeDeclaration plus
+        ^ ((annotations optional, packageDeclaration) optional , importDeclaration star , typeDeclaration plus) trim
+
+    "Modified: / 15-03-2012 / 11:16:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 createdName 
@@ -370,10 +372,10 @@
 
         ^ variableModifiers ,
         type,
-        ('...' asParser token) ,
+        (JavaTokenParser for: #Ellipsis) ,
         identifier
 
-    "Modified: / 15-03-2012 / 09:01:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 15-03-2012 / 10:10:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 fieldDeclaration
--- a/src/tools/JavaParserIITests.st	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/JavaParserIITests.st	Thu Mar 15 11:23:37 2012 +0000
@@ -495,11 +495,37 @@
     "Created: / 12-03-2012 / 17:03:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+testClassDeclaration3f
+
+        self parse: '
+        @Target ( ElementType.ANNOTATION_TYPE )
+        public interface IInterface
+{  
+}'
+        rule: #classOrInterfaceDeclaration
+
+    "Created: / 15-03-2012 / 10:38:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+testClassDeclaration3g
+
+        self parse: '
+        @Target 
+        public @interface MyFirstAnnotation
+{  
+}'
+        rule: #classOrInterfaceDeclaration
+
+    "Created: / 15-03-2012 / 10:38:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 testMethodDeclaration1
 
-	self 
-		parse: 'public void aMethod() {	}'
-			rule: #methodDeclaration
+        self 
+            parse: 'public void aMethod() {         }'
+            rule: #methodDeclaration
+
+    "Modified: / 15-03-2012 / 09:44:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 testMethodDeclaration2
@@ -815,7 +841,7 @@
 
 test_compilation_unit_01c
 
-    self parse:'
+    result := JavaParserII parse:'
 /*
  * Copyright 2003-2006 Sun Microsystems, Inc.  All Rights Reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -861,9 +887,11 @@
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.ANNOTATION_TYPE)
 public @interface Retention {
-
+    RetentionPolicy value();   
 }
-' rule: #start
+
+'.
+    self assert: result isPetitFailure not.
 
     "Created: / 12-03-2012 / 16:24:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
--- a/src/tools/JavaScanner.st	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/JavaScanner.st	Thu Mar 15 11:23:37 2012 +0000
@@ -115,7 +115,7 @@
     ].
     ActionArray at:$_ asciiValue put:block.
 
-    ActionArray at:($. asciiValue) put:[:s :char | s nextDotOrFloat].
+    ActionArray at:($. asciiValue) put:[:s :char | s nextDotOrFloatOrEllipsis].
 
     ActionArray at:($' asciiValue) put:[:s :char | s nextString:$' character:true].
     ActionArray at:($" asciiValue) put:[:s :char | s nextString:$" character:false].
@@ -139,7 +139,7 @@
 
     "Created: / 14-05-1998 / 15:48:03 / cg"
     "Modified: / 17-05-1998 / 21:03:37 / cg"
-    "Modified: / 15-03-2012 / 08:51:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 15-03-2012 / 10:08:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 setupKeywordTable
@@ -363,6 +363,30 @@
     ^ tokenType
 !
 
+nextDotOrFloatOrEllipsis
+    |nextChar nextChar2|
+
+    nextChar := source nextPeek.
+    nextChar isDigit ifTrue:[
+        ^ self nextFractionalPart:0.
+    ].
+    nextChar == $. ifTrue:[
+        nextChar2 := source nextPeek.
+        nextChar2 == $. ifTrue:[
+            source next.
+            tokenType := #Ellipsis.
+            tokenValue := '...'.
+            ^tokenType.
+        ] ifFalse:[
+            source skip: -1.
+        ].
+    ].
+    tokenType := tokenValue := $. .
+    ^ tokenType
+
+    "Created: / 15-03-2012 / 10:08:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 nextFractionalPart:intValue
     |nextChar value s tokenRadix|
 
@@ -412,37 +436,37 @@
     |nextChar string ok pos ch2|
 
     hereChar == $_ ifTrue:[
-	nextChar := source nextPeek.
-	string := '_'.
-	[nextChar == $_] whileTrue:[
-	    string := string copyWith:$_.
-	    nextChar := source nextPeek.
-	].
-	nextChar isAlphaNumeric ifTrue:[
-	    string := string , source nextAlphaNumericWord.
-	]
+        nextChar := source nextPeek.
+        string := '_'.
+        [nextChar == $_] whileTrue:[
+            string := string copyWith:$_.
+            nextChar := source nextPeek.
+        ].
+        nextChar isAlphaNumeric ifTrue:[
+            string := string , source nextAlphaNumericWord.
+        ]
     ] ifFalse:[
-	string := source nextAlphaNumericWord "self nextId".
+        string := source nextAlphaNumericWord "self nextId".
     ].
     nextChar := source peekOrNil.
 
-    (nextChar == $_ "or:[nextChar == $.]") ifTrue:[
-	pos := source position.
-	[ok] whileTrue:[
-	    string := string copyWith:nextChar.
-	    nextChar := source nextPeek.
-	    nextChar isNil ifTrue:[
-		ok := false
-	    ] ifFalse:[
-		(nextChar isAlphaNumeric) ifTrue:[
-		    string := string , source nextAlphaNumericWord.
-		    nextChar := source peekOrNil.
-		].
-		(nextChar == $_ "or:[nextChar == $.]") ifFalse:[
-		    ok := false
-		]
-	    ]
-	].
+    (nextChar == $_ or:[nextChar == $$]) ifTrue:[
+        pos := source position.
+        [ok] whileTrue:[
+            string := string copyWith:nextChar.
+            nextChar := source nextPeek.
+            nextChar isNil ifTrue:[
+                ok := false
+            ] ifFalse:[
+                (nextChar isAlphaNumeric) ifTrue:[
+                    string := string , source nextAlphaNumericWord.
+                    nextChar := source peekOrNil.
+                ].
+                (nextChar == $_ or:[nextChar == $$]) ifFalse:[
+                    ok := false
+                ]
+            ]
+        ].
     ].
 
 "/    (nextChar == $: and:[scanColonAsLabel]) ifTrue:[
@@ -466,13 +490,15 @@
 
     tokenValue := string.
     (self checkForKeyword:string) ifFalse:[
-	tokenType := #Identifier.
+        tokenType := #Identifier.
     ].
     tokenEndPosition := source position - 1.
     peekChar2 notNil ifTrue:[
-	tokenEndPosition := tokenEndPosition - 1
+        tokenEndPosition := tokenEndPosition - 1
     ].
     ^ tokenType
+
+    "Modified: / 15-03-2012 / 10:57:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 nextMulti:list after:firstChar
@@ -702,14 +728,21 @@
     |t|
 
     [
-	t := super nextToken.
-	t isNil
+        t := super nextToken.
+        t isNil
     ] whileTrue.
-    Verbose == true ifTrue:[Transcript showCR:t].
+    Verbose == true ifTrue:[
+        Transcript 
+            show:'JavaScanner nextToken => ';
+            show: t storeString;
+            show: ' | ';
+            showCR: tokenValue.
+    ].
     ^ t
 
-    "Created: / 14.5.1998 / 15:48:04 / cg"
-    "Modified: / 16.5.1998 / 19:12:29 / cg"
+    "Created: / 14-05-1998 / 15:48:04 / cg"
+    "Modified: / 16-05-1998 / 19:12:29 / cg"
+    "Modified: / 15-03-2012 / 10:55:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 skipComment
@@ -798,9 +831,18 @@
 position: anInteger
     "The receiver does not check for invalid arguments passed to this method, as it is solely used with valid indexes for backtracking."
 
+"/    anInteger = 16 ifTrue:[self halt].
+
     ^source position: anInteger
 
-    "Modified: / 14-03-2012 / 23:32:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 15-03-2012 / 10:59:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+skipSeparators
+
+    source skipSeparators
+
+    "Created: / 15-03-2012 / 10:35:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 uncheckedPeek
--- a/src/tools/Make.proto	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/Make.proto	Thu Mar 15 11:23:37 2012 +0000
@@ -1,7 +1,7 @@
 # $Header$
 #
 # DO NOT EDIT
-# automagically generated from the projectDefinition: stx_libjava_tools at 2012-03-15 09:06:23.623.
+# automagically generated from the projectDefinition: stx_libjava_tools at 2012-03-15 11:23:55.188.
 #
 # Warning: once you modify this file, do not rerun
 # stmkmp or projectDefinition-build again - otherwise, your changes are lost.
@@ -137,6 +137,7 @@
 
 
 # BEGINMAKEDEPEND --- do not remove this line; make depend needs it
+$(OUTDIR)JavaBlockParser.$(O) JavaBlockParser.$(H): JavaBlockParser.st $(INCLUDE_TOP)/squeak/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaListInspectorView.$(O) JavaListInspectorView.$(H): JavaListInspectorView.st $(INCLUDE_TOP)/stx/libtool/OrderedCollectionInspectorView.$(H) $(INCLUDE_TOP)/stx/libtool/InspectorView.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaMapInspectorView.$(O) JavaMapInspectorView.$(H): JavaMapInspectorView.st $(INCLUDE_TOP)/stx/libtool/DictionaryInspectorView.$(H) $(INCLUDE_TOP)/stx/libtool/InspectorView.$(H) $(INCLUDE_TOP)/stx/libview/SimpleView.$(H) $(INCLUDE_TOP)/stx/libview/DisplaySurface.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsMedium.$(H) $(INCLUDE_TOP)/stx/libview/DeviceGraphicsContext.$(H) $(INCLUDE_TOP)/stx/libview/GraphicsContext.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParseNode.$(O) JavaParseNode.$(H): JavaParseNode.st $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -156,7 +157,7 @@
 $(OUTDIR)JavaMethodNode.$(O) JavaMethodNode.$(H): JavaMethodNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParserII.$(O) JavaParserII.$(H): JavaParserII.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParserI.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaScanner.$(O) JavaScanner.$(H): JavaScanner.st $(INCLUDE_TOP)/stx/libjava/tools/JavaScannerBase.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaSyntaxHighlighter_Old.$(O) JavaSyntaxHighlighter_Old.$(H): JavaSyntaxHighlighter_Old.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNodeBuilder.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParser_Old.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPParser.$(H) $(STCHDR)
+$(OUTDIR)JavaSyntaxHighlighter_Old.$(O) JavaSyntaxHighlighter_Old.$(H): JavaSyntaxHighlighter_Old.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParser_Old.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/squeak/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNodeBuilder.$(H) $(STCHDR)
 $(OUTDIR)JavaTypeNode.$(O) JavaTypeNode.$(H): JavaTypeNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaArrayTypeNode.$(O) JavaArrayTypeNode.$(H): JavaArrayTypeNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaBooleanTypeNode.$(O) JavaBooleanTypeNode.$(H): JavaBooleanTypeNode.st $(INCLUDE_TOP)/stx/libjava/tools/JavaTypeNode.$(H) $(INCLUDE_TOP)/stx/libjava/tools/JavaParseNode.$(H) $(INCLUDE_TOP)/stx/libcomp/ParseNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
--- a/src/tools/Make.spec	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/Make.spec	Thu Mar 15 11:23:37 2012 +0000
@@ -1,7 +1,7 @@
 # $Header$
 #
 # DO NOT EDIT
-# automagically generated from the projectDefinition: stx_libjava_tools at 2012-03-15 09:06:22.668.
+# automagically generated from the projectDefinition: stx_libjava_tools at 2012-03-15 11:23:54.269.
 #
 # Warning: once you modify this file, do not rerun
 # stmkmp or projectDefinition-build again - otherwise, your changes are lost.
@@ -80,6 +80,7 @@
 	JavaParserII \
 	JavaVoidTypeNode \
 	JavaParser \
+	JavaBlockParser \
 	JavaScannerBase \
 	JavaTokenParser \
 	JavaScanner \
@@ -119,6 +120,7 @@
     $(OUTDIR)JavaParserII.$(O) \
     $(OUTDIR)JavaVoidTypeNode.$(O) \
     $(OUTDIR)JavaParser.$(O) \
+    $(OUTDIR)JavaBlockParser.$(O) \
     $(OUTDIR)JavaScannerBase.$(O) \
     $(OUTDIR)JavaTokenParser.$(O) \
     $(OUTDIR)JavaScanner.$(O) \
--- a/src/tools/abbrev.stc	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/abbrev.stc	Thu Mar 15 11:23:37 2012 +0000
@@ -5,7 +5,7 @@
 JavaMapInspectorView JavaMapInspectorView stx:libjava/tools 'Languages-Java-Tools-Inspectors' 2
 JavaParseNode JavaParseNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaParseNodeBuilder JavaParseNodeBuilder stx:libjava/tools 'Languages-Java-Parser-AST' 0
-JavaParseResult JavaParseResult stx:libjava/tools 'Languages-Java-Parser-Old' 0
+JavaParseResult JavaParseResult stx:libjava/tools 'Languages-Java-Parser' 0
 JavaParserIITests JavaParserIITests stx:libjava/tools 'Languages-Java-Tests-Parser' 1
 JavaParserITests JavaParserITests stx:libjava/tools 'Languages-Java-Tests-Parser' 1
 JavaParserTestCase JavaParserTestCase stx:libjava/tools 'Languages-Java-Tests-Parser' 1
@@ -35,6 +35,7 @@
 JavaParserII JavaParserII stx:libjava/tools 'Languages-Java-Parser' 0
 JavaVoidTypeNode JavaVoidTypeNode stx:libjava/tools 'Languages-Java-Parser-AST' 0
 JavaParser JavaParser stx:libjava/tools 'Languages-Java-Parser' 0
+JavaBlockParser JavaBlockParser stx:libjava/tools 'Languages-Java-Parser' 0
 JavaScannerBase JavaScannerBase stx:libjava/tools 'Languages-Java-Parser' 3
 JavaTokenParser JavaTokenParser stx:libjava/tools 'Languages-Java-Parser' 0
 JavaScanner JavaScanner stx:libjava/tools 'Languages-Java-Parser' 3
--- a/src/tools/bc.mak	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/bc.mak	Thu Mar 15 11:23:37 2012 +0000
@@ -1,7 +1,7 @@
 # $Header$
 #
 # DO NOT EDIT
-# automagically generated from the projectDefinition: stx_libjava_tools at 2012-03-15 09:06:24.089.
+# automagically generated from the projectDefinition: stx_libjava_tools at 2012-03-15 11:23:55.665.
 #
 # Warning: once you modify this file, do not rerun
 # stmkmp or projectDefinition-build again - otherwise, your changes are lost.
@@ -76,6 +76,7 @@
 
 
 # BEGINMAKEDEPEND --- do not remove this line; make depend needs it
+$(OUTDIR)JavaBlockParser.$(O) JavaBlockParser.$(H): JavaBlockParser.st $(INCLUDE_TOP)\squeak\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaListInspectorView.$(O) JavaListInspectorView.$(H): JavaListInspectorView.st $(INCLUDE_TOP)\stx\libtool\OrderedCollectionInspectorView.$(H) $(INCLUDE_TOP)\stx\libtool\InspectorView.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaMapInspectorView.$(O) JavaMapInspectorView.$(H): JavaMapInspectorView.st $(INCLUDE_TOP)\stx\libtool\DictionaryInspectorView.$(H) $(INCLUDE_TOP)\stx\libtool\InspectorView.$(H) $(INCLUDE_TOP)\stx\libview\SimpleView.$(H) $(INCLUDE_TOP)\stx\libview\DisplaySurface.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsMedium.$(H) $(INCLUDE_TOP)\stx\libview\DeviceGraphicsContext.$(H) $(INCLUDE_TOP)\stx\libview\GraphicsContext.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParseNode.$(O) JavaParseNode.$(H): JavaParseNode.st $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -95,7 +96,7 @@
 $(OUTDIR)JavaMethodNode.$(O) JavaMethodNode.$(H): JavaMethodNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaParserII.$(O) JavaParserII.$(H): JavaParserII.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParserI.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaScanner.$(O) JavaScanner.$(H): JavaScanner.st $(INCLUDE_TOP)\stx\libjava\tools\JavaScannerBase.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaSyntaxHighlighter_Old.$(O) JavaSyntaxHighlighter_Old.$(H): JavaSyntaxHighlighter_Old.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNodeBuilder.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParser_Old.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPParser.$(H) $(STCHDR)
+$(OUTDIR)JavaSyntaxHighlighter_Old.$(O) JavaSyntaxHighlighter_Old.$(H): JavaSyntaxHighlighter_Old.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParser_Old.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\squeak\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNodeBuilder.$(H) $(STCHDR)
 $(OUTDIR)JavaTypeNode.$(O) JavaTypeNode.$(H): JavaTypeNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaArrayTypeNode.$(O) JavaArrayTypeNode.$(H): JavaArrayTypeNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaBooleanTypeNode.$(O) JavaBooleanTypeNode.$(H): JavaBooleanTypeNode.st $(INCLUDE_TOP)\stx\libjava\tools\JavaTypeNode.$(H) $(INCLUDE_TOP)\stx\libjava\tools\JavaParseNode.$(H) $(INCLUDE_TOP)\stx\libcomp\ParseNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
--- a/src/tools/libInit.cc	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/libInit.cc	Thu Mar 15 11:23:37 2012 +0000
@@ -27,6 +27,7 @@
 void _libstx_libjava_tools_Init(pass, __pRT__, snd)
 OBJ snd; struct __vmData__ *__pRT__; {
 __BEGIN_PACKAGE2__("libstx_libjava_tools", _libstx_libjava_tools_Init, "stx:libjava/tools");
+_JavaBlockParser_Init(pass,__pRT__,snd);
 _JavaListInspectorView_Init(pass,__pRT__,snd);
 _JavaMapInspectorView_Init(pass,__pRT__,snd);
 _JavaParseNode_Init(pass,__pRT__,snd);
--- a/src/tools/tools.rc	Thu Mar 15 09:06:05 2012 +0000
+++ b/src/tools/tools.rc	Thu Mar 15 11:23:37 2012 +0000
@@ -25,7 +25,7 @@
       VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2011\nCopyright eXept Software AG 1998-2011\0"
       VALUE "ProductName", "Smalltalk/X\0"
       VALUE "ProductVersion", "6.2.1.1\0"
-      VALUE "ProductDate", "Thu, 15 Mar 2012 09:06:26 GMT\0"
+      VALUE "ProductDate", "Thu, 15 Mar 2012 11:23:57 GMT\0"
     END
 
   END