JavaUnresolvedClassConstant.st
changeset 107 86a831b6728a
parent 93 2b1e50b70bb1
child 135 098936234135
--- a/JavaUnresolvedClassConstant.st	Tue Jul 02 16:39:29 1996 +0000
+++ b/JavaUnresolvedClassConstant.st	Tue Jul 02 16:40:15 1996 +0000
@@ -118,6 +118,37 @@
             constantPool at:constantPoolIndex put:ref.
             ^ ref
         ].
+
+        "/ look for specials like byte[], int[] etc.
+        "/ there are only a few of them - forgive me nameing them here ...
+        fullName = '[B' ifTrue:[    "/ byte[]
+            ref := JavaBuiltInClassPointerRef class:ByteArray nameandType:fullName.
+            constantPool at:constantPoolIndex put:ref.
+            ^ ref
+        ].
+        fullName = '[I' ifTrue:[     "/ int[]
+            ref := JavaBuiltInClassPointerRef class:Array nameandType:fullName.
+            constantPool at:constantPoolIndex put:ref.
+            ^ ref
+        ].
+        fullName = '[D' ifTrue:[     "/ double[]
+            ref := JavaBuiltInClassPointerRef class:Array nameandType:fullName.
+            constantPool at:constantPoolIndex put:ref.
+            ^ ref
+        ].
+        fullName = '[[D' ifTrue:[    "/ double[][]
+            ref := JavaBuiltInClassPointerRef class:DoubleArray nameandType:fullName.
+            constantPool at:constantPoolIndex put:ref.
+            ^ ref
+        ].
+        fullName = '[[I' ifTrue:[    "/ int[][]
+            ref := JavaBuiltInClassPointerRef class:Array nameandType:fullName.
+            constantPool at:constantPoolIndex put:ref.
+            ^ ref
+        ].
+        (fullName startsWith:'[L') ifFalse:[
+            ('JAVA: oops - unresolvable funny class: ' , fullName) errorPrintCR.
+        ]
     ] ifFalse:[
         nm := self className.
     ].
@@ -132,5 +163,5 @@
 !JavaUnresolvedClassConstant  class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaUnresolvedClassConstant.st,v 1.15 1996/06/28 21:57:27 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaUnresolvedClassConstant.st,v 1.16 1996/07/02 16:40:03 cg Exp $'
 ! !