RegressionTests__CompilerTests2.st
changeset 1001 9478e093ee77
parent 993 8cc7201dbfda
child 1037 4bba0706b9ae
--- a/RegressionTests__CompilerTests2.st	Fri Sep 13 13:56:24 2013 +0200
+++ b/RegressionTests__CompilerTests2.st	Fri Sep 20 12:47:39 2013 +0200
@@ -163,6 +163,33 @@
     "Created: / 22-08-2013 / 15:48:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+method_argAndVarNames_06
+    (Smalltalk at:#exept_regression) classNamesAndAttributesDo:[:clsnm :attributes|
+        | cls |
+
+        cls := Smalltalk at: clsnm.
+        ((Array with: self class) includes: cls) ifTrue:[
+            (attributes includes: #autoload) ifTrue:[
+                "/ Care for Object!!
+                cls superclass notNil ifTrue:[
+                    | superDef superNm |
+
+                    superDef := ProjectDefinition definitionClassForPackage: cls superclass package.
+                    superNm := cls superclass name.
+                    argAndVarNames := thisContext argAndVarNames asArray.    
+                    ^ self
+                ].
+            ].
+        ].
+    ].           
+
+    "
+    CompilerTests2 basicNew method_argAndVarNames_06
+    "
+
+    "Created: / 20-09-2013 / 11:44:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 method_lineno_002
     1 factorial. ^self currentLineNumber
 
@@ -708,6 +735,18 @@
     ]
 
     "Created: / 22-08-2013 / 15:49:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+test_argAndVarNames_06
+
+    #(bc jit stc) do:[:mode |
+        argAndVarNames := nil.
+        self compile: (self class >> #method_argAndVarNames_06) source mode: mode.
+        self perform: (mode , '_method_argAndVarNames_06') asSymbol.
+        self assert: argAndVarNames = #(clsnm attributes cls superDef superNm)
+    ]
+
+    "Created: / 20-09-2013 / 11:44:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
 !CompilerTests2 methodsFor:'tests - line numbers'!