RegressionTests__CompilerTests2.st
changeset 1245 a00a20a29299
parent 1212 8429b2bff582
child 1246 cc5bd61b11b4
--- a/RegressionTests__CompilerTests2.st	Tue Nov 18 17:25:00 2014 +0100
+++ b/RegressionTests__CompilerTests2.st	Tue Nov 18 21:49:01 2014 +0100
@@ -114,6 +114,34 @@
     "Modified: / 26-09-2014 / 14:58:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
+!CompilerTests2 methodsFor:'private - *dynamic*'!
+
+bc_method_literals_array_01
+    | literal |
+
+    literal := #(
+        _XXX:_:
+        YYY
+        _XXX:_:
+    ).
+    ^ literal
+
+    "Created: / 20-01-2014 / 13:39:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+stc_method_literals_array_01
+    | literal |
+
+    literal := #(
+        _XXX:_:
+        YYY
+        _XXX:_:
+    ).
+    ^ literal
+
+    "Created: / 20-01-2014 / 13:39:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
 !CompilerTests2 methodsFor:'private-mock methods'!
 
 method_argAndVarNames_01
@@ -560,6 +588,32 @@
     "Created: / 20-01-2014 / 13:39:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
+method_literals_array_01a
+    | literal |
+
+    literal := #(
+        _XXX:_:
+        YYY
+        _XXX:_:
+    ).
+    ^ literal
+
+    "Created: / 20-01-2014 / 13:39:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+method_literals_array_01b
+    | literal |
+
+    literal := #(
+        #'_XXX:_:'
+        #'YYY'
+        #'_XXX:_:'
+    ).
+    ^ literal
+
+    "Created: / 20-01-2014 / 13:39:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
 method_literals_symbol_01
     | literal |
 
@@ -992,51 +1046,101 @@
 
 !CompilerTests2 methodsFor:'tests - literals'!
 
-test_literals_array_01
+test_literals_array_01a
     | m l_stc l_bc |
 
-    m := self class >> #method_literals_array_01.
+    m := self class >> #method_literals_array_01a.
 
     self compile: m source mode: #stc.
     self compile: m source mode: #bc.
 
-    l_stc := self stc_method_literals_array_01.
-    l_bc :=  self bc_method_literals_array_01.
+    l_stc := self stc_method_literals_array_01a.
+    l_bc :=  self bc_method_literals_array_01a.
 
     self assert: l_stc = l_bc.
 
     "Created: / 20-01-2014 / 13:46:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
-test_literals_array_01_bc
+test_literals_array_01a_bc
     | m l |
 
-    m := self class >> #method_literals_array_01.
+    m := self class >> #method_literals_array_01a.
 
     self compile: m source mode: #bc.
 
-    l := self bc_method_literals_array_01.
+    l := self bc_method_literals_array_01a.
 
     self assert: l size == 3.
     self assert: l first == #'_XXX:_:'.
-    self assert: l first == #'YYY'.
+    self assert: l second == #'YYY'.
     self assert: l third == #'_XXX:_:'.
 
     "Created: / 20-01-2014 / 13:42:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
-test_literals_array_01_stc
+test_literals_array_01a_stc
     | m l |
 
-    m := self class >> #method_literals_array_01.
+    m := self class >> #method_literals_array_01a.
 
     self compile: m source mode: #stc.
 
-    l := self stc_method_literals_array_01.
+    l := self stc_method_literals_array_01a.
 
     self assert: l size == 3.
     self assert: l first == #'_XXX:_:'.
-    self assert: l first == #'YYY'.
+    self assert: l second == #'YYY'.
+    self assert: l third == #'_XXX:_:'.
+
+    "Created: / 20-01-2014 / 13:40:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+test_literals_array_01b
+    | m l_stc l_bc |
+
+    m := self class >> #method_literals_array_01b.
+
+    self compile: m source mode: #stc.
+    self compile: m source mode: #bc.
+
+    l_stc := self stc_method_literals_array_01b.
+    l_bc :=  self bc_method_literals_array_01b.
+
+    self assert: l_stc = l_bc.
+
+    "Created: / 20-01-2014 / 13:46:42 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+test_literals_array_01b_bc
+    | m l |
+
+    m := self class >> #method_literals_array_01b.
+
+    self compile: m source mode: #bc.
+
+    l := self bc_method_literals_array_01b.
+
+    self assert: l size == 3.
+    self assert: l first == #'_XXX:_:'.
+    self assert: l second == #'YYY'.
+    self assert: l third == #'_XXX:_:'.
+
+    "Created: / 20-01-2014 / 13:42:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+test_literals_array_01b_stc
+    | m l |
+
+    m := self class >> #method_literals_array_01b.
+
+    self compile: m source mode: #stc.
+
+    l := self stc_method_literals_array_01b.
+
+    self assert: l size == 3.
+    self assert: l first == #'_XXX:_:'.
+    self assert: l second == #'YYY'.
     self assert: l third == #'_XXX:_:'.
 
     "Created: / 20-01-2014 / 13:40:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"