tests: add base_gen_redef.nit
authorJean Privat <jean@pryen.org>
Fri, 26 Sep 2014 03:38:47 +0000 (23:38 -0400)
committerJean Privat <jean@pryen.org>
Tue, 30 Sep 2014 01:45:00 +0000 (21:45 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

39 files changed:
tests/base_gen_redef.nit [new file with mode: 0644]
tests/sav/base_as_notnull2.res
tests/sav/base_as_notnull2_alt1.res
tests/sav/base_as_notnull2_alt2.res
tests/sav/base_as_notnull2_alt3.res
tests/sav/base_autocast_alt1.res
tests/sav/base_covar_gen_1alt1_alt1.res
tests/sav/base_covar_gen_1alt1_alt2.res
tests/sav/base_covar_gen_alt3.res
tests/sav/base_covar_gen_alt4.res
tests/sav/base_gen_bound_alt1.res
tests/sav/base_gen_bound_alt2.res
tests/sav/base_gen_bound_alt3.res
tests/sav/base_gen_bound_alt4.res
tests/sav/base_gen_reassign_alt1.res
tests/sav/base_gen_reassign_alt2.res
tests/sav/base_gen_reassign_alt4.res
tests/sav/base_gen_reassign_alt5.res
tests/sav/base_gen_reassign_alt6.res
tests/sav/base_gen_redef.res [new file with mode: 0644]
tests/sav/base_gen_redef_alt1.res [new file with mode: 0644]
tests/sav/base_gen_redef_alt2.res [new file with mode: 0644]
tests/sav/base_gen_redef_alt3.res [new file with mode: 0644]
tests/sav/base_gen_variance2_alt1.res
tests/sav/base_gen_variance2_alt2.res
tests/sav/base_gen_variance3_alt1.res
tests/sav/base_gen_variance_alt3.res
tests/sav/base_gen_variance_alt6.res
tests/sav/base_gen_variance_alt8.res
tests/sav/base_gen_variance_int_alt1.res
tests/sav/base_isa_vt_gen1.res
tests/sav/error_class_generic_alt1.res
tests/sav/error_class_generic_alt3.res
tests/sav/error_class_generic_alt6.res
tests/sav/error_inh_clash4.res
tests/sav/test_multiconstraint_inh.res
tests/sav/test_new_native_alt1.res
tests/sav/test_paire.res
tests/test_paire.nit

diff --git a/tests/base_gen_redef.nit b/tests/base_gen_redef.nit
new file mode 100644 (file)
index 0000000..37030bf
--- /dev/null
@@ -0,0 +1,24 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import base_gen2
+
+redef class B[E] #alt1# redef class B #alt2# redef class B[X] #alt3# redef class B[E,X]
+       fun output2 do e2.output
+       fun e2: E do return e
+       #alt2#fun e3: X do return e
+end
+
+var b = new B[Int](2)
+b.output2
index c426288..a64bbf0 100644 (file)
@@ -1,5 +1,5 @@
-base_as_notnull2.nit:30,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
-base_as_notnull2.nit:50,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
+base_as_notnull2.nit:30,12--25: Warning: expression is already not null, since it is a `E: Object`.
+base_as_notnull2.nit:50,12--25: Warning: expression is already not null, since it is a `E: Object`.
 1
 1
 2
index e6b980e..a28e2e1 100644 (file)
@@ -1,3 +1,3 @@
-alt/base_as_notnull2_alt1.nit:30,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
-alt/base_as_notnull2_alt1.nit:50,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
+alt/base_as_notnull2_alt1.nit:30,12--25: Warning: expression is already not null, since it is a `E: Object`.
+alt/base_as_notnull2_alt1.nit:50,12--25: Warning: expression is already not null, since it is a `E: Object`.
 alt/base_as_notnull2_alt1.nit:58,7--10: Type error: expected Object, got null
index 0d136a8..ccaa594 100644 (file)
@@ -1,5 +1,5 @@
-alt/base_as_notnull2_alt2.nit:30,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
-alt/base_as_notnull2_alt2.nit:50,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
+alt/base_as_notnull2_alt2.nit:30,12--25: Warning: expression is already not null, since it is a `E: Object`.
+alt/base_as_notnull2_alt2.nit:50,12--25: Warning: expression is already not null, since it is a `E: Object`.
 Runtime error: Cast failed (alt/base_as_notnull2_alt2.nit:40)
 1
 1
index c166c42..7ce3a5b 100644 (file)
@@ -1,3 +1,3 @@
-alt/base_as_notnull2_alt3.nit:30,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
-alt/base_as_notnull2_alt3.nit:50,12--25: Warning: expression is already not null, since it is a `G#0: Object`.
+alt/base_as_notnull2_alt3.nit:30,12--25: Warning: expression is already not null, since it is a `E: Object`.
+alt/base_as_notnull2_alt3.nit:50,12--25: Warning: expression is already not null, since it is a `E: Object`.
 alt/base_as_notnull2_alt3.nit:64,7--10: Type error: expected Int, got null
index 64e8ec9..a653d42 100644 (file)
@@ -1,3 +1,3 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_autocast_alt1.nit:22)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_autocast_alt1.nit:22)
 1
 2
index 5a6459b..c08a6e4 100644 (file)
@@ -1 +1 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_covar_gen_1alt1_alt1.nit:19)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_covar_gen_1alt1_alt1.nit:19)
index 1533602..8451fac 100644 (file)
@@ -1 +1 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_covar_gen_1alt1_alt2.nit:18)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_covar_gen_1alt1_alt2.nit:18)
index 3c2c470..2d49fad 100644 (file)
@@ -1 +1 @@
-Runtime error: Cast failed. Expected `G#0`, got `G[Object]` (alt/base_covar_gen_alt3.nit:19)
+Runtime error: Cast failed. Expected `E`, got `G[Object]` (alt/base_covar_gen_alt3.nit:19)
index 31237a8..6eaead5 100644 (file)
@@ -1 +1 @@
-Runtime error: Cast failed. Expected `G#0`, got `G[Object]` (alt/base_covar_gen_alt4.nit:18)
+Runtime error: Cast failed. Expected `E`, got `G[Object]` (alt/base_covar_gen_alt4.nit:18)
index 342698c..c7948e5 100644 (file)
@@ -1 +1 @@
-alt/base_gen_bound_alt1.nit:31,10: Type error: expected B, got H#0
+alt/base_gen_bound_alt1.nit:31,10: Type error: expected B, got F
index 79521ed..eec93b1 100644 (file)
@@ -1 +1 @@
-alt/base_gen_bound_alt2.nit:32,11: Type error: expected B, got H#0
+alt/base_gen_bound_alt2.nit:32,11: Type error: expected B, got F
index 26c07bc..d713b99 100644 (file)
@@ -1 +1 @@
-alt/base_gen_bound_alt3.nit:33,11: Type error: expected B, got H#0
+alt/base_gen_bound_alt3.nit:33,11: Type error: expected B, got F
index b7fca30..f79e28c 100644 (file)
@@ -1 +1 @@
-alt/base_gen_bound_alt4.nit:34,13: Type error: expected B, got H#0
+alt/base_gen_bound_alt4.nit:34,13: Type error: expected B, got F
index e789485..40782b2 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_gen_reassign_alt1.nit:23)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_gen_reassign_alt1.nit:23)
 11
 21
 31
index b8b97b2..d26da80 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_gen_reassign_alt2.nit:23)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_gen_reassign_alt2.nit:23)
 11
 21
 31
index 2e6e40b..02a3b8e 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_gen_reassign_alt4.nit:23)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_gen_reassign_alt4.nit:23)
 11
 21
 31
index 3c233b9..acf354b 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_gen_reassign_alt5.nit:23)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_gen_reassign_alt5.nit:23)
 11
 21
 31
index dd598d3..549a816 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `G#0`, got `Int` (alt/base_gen_reassign_alt6.nit:23)
+Runtime error: Cast failed. Expected `E`, got `Int` (alt/base_gen_reassign_alt6.nit:23)
 11
 21
 31
diff --git a/tests/sav/base_gen_redef.res b/tests/sav/base_gen_redef.res
new file mode 100644 (file)
index 0000000..0cfbf08
--- /dev/null
@@ -0,0 +1 @@
+2
diff --git a/tests/sav/base_gen_redef_alt1.res b/tests/sav/base_gen_redef_alt1.res
new file mode 100644 (file)
index 0000000..0cfbf08
--- /dev/null
@@ -0,0 +1 @@
+2
diff --git a/tests/sav/base_gen_redef_alt2.res b/tests/sav/base_gen_redef_alt2.res
new file mode 100644 (file)
index 0000000..09c27f7
--- /dev/null
@@ -0,0 +1 @@
+alt/base_gen_redef_alt2.nit:17,15: Error: Formal parameter type #0 `X` must be named `E' as in the original definition in module `base_gen2`.
diff --git a/tests/sav/base_gen_redef_alt3.res b/tests/sav/base_gen_redef_alt3.res
new file mode 100644 (file)
index 0000000..cc76588
--- /dev/null
@@ -0,0 +1 @@
+alt/base_gen_redef_alt3.nit:17,13: Redef error: Formal parameter arity missmatch; got 2, expected 1.
index 1ad479a..4b49330 100644 (file)
@@ -1,2 +1,2 @@
-Runtime error: Cast failed. Expected `G#0`, got `B` (alt/base_gen_variance2_alt1.nit:27)
+Runtime error: Cast failed. Expected `E`, got `B` (alt/base_gen_variance2_alt1.nit:27)
 3
index 2528c5e..10f4ba7 100644 (file)
@@ -1,2 +1,2 @@
-Runtime error: Cast failed. Expected `G#0`, got `D` (alt/base_gen_variance2_alt2.nit:27)
+Runtime error: Cast failed. Expected `E`, got `D` (alt/base_gen_variance2_alt2.nit:27)
 3
index 26d887d..f450e1f 100644 (file)
@@ -1,2 +1,2 @@
-Runtime error: Cast failed. Expected `G#0`, got `D` (alt/base_gen_variance3_alt1.nit:27)
+Runtime error: Cast failed. Expected `E`, got `D` (alt/base_gen_variance3_alt1.nit:27)
 2
index a81c369..bdccdbe 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `nullable G#0`, got `C` (alt/base_gen_variance_alt3.nit:18)
+Runtime error: Cast failed. Expected `nullable E`, got `C` (alt/base_gen_variance_alt3.nit:18)
 2
 20
 2
index 8b857dc..4a2c316 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `nullable G#0`, got `G[C]` (alt/base_gen_variance_alt6.nit:18)
+Runtime error: Cast failed. Expected `nullable E`, got `G[C]` (alt/base_gen_variance_alt6.nit:18)
 2
 20
 2
index 89e8b84..936f637 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `nullable G#0`, got `G[A]` (alt/base_gen_variance_alt8.nit:18)
+Runtime error: Cast failed. Expected `nullable E`, got `G[A]` (alt/base_gen_variance_alt8.nit:18)
 2
 20
 2
index 3057795..f912514 100644 (file)
@@ -1,2 +1,2 @@
-Runtime error: Cast failed. Expected `G#0`, got `Char` (alt/base_gen_variance_int_alt1.nit:27)
+Runtime error: Cast failed. Expected `E`, got `Char` (alt/base_gen_variance_int_alt1.nit:27)
 2
index 032236e..f80c36c 100644 (file)
@@ -1,4 +1,4 @@
-base_isa_vt_gen1.nit:30,10--34: Warning: Expression is already a Triple[A#0, A#1, V].
+base_isa_vt_gen1.nit:30,10--34: Warning: Expression is already a Triple[T, U, V].
 base_isa_vt_gen1.nit:54,8--52: Warning: Expression is already a Triple[String, Int, nullable Object].
 base_isa_vt_gen1.nit:57,8--46: Warning: Expression is already a Triple[String, String, String].
 base_isa_vt_gen1.nit:60,8--48: Warning: Expression is already a Triple[String, String, B[String]].
index f7e9a89..24a450f 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt1.nit:17,13--17: Redef error: Formal parameter arity missmatch; got 0, expected 1.
+alt/error_class_generic_alt1.nit:25,8--12: Type error: 'Array' is a generic class.
index 95235a6..aa8128f 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt3.nit:19,13--17: Redef error: Formal parameter arity missmatch; got 2, expected 1.
+alt/error_class_generic_alt3.nit:19,29--34: Error: A formal parameter type `E' already exists
index eebfb9c..f1fcb86 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt6.nit:22,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt6.nit:22,23--28: Error: A formal parameter type `E' already exists
index 638259a..2f4865c 100644 (file)
@@ -1,2 +1,2 @@
-error_inh_clash4.nit:15,7: Error: Incompatibles ancestors for A: Sequence[A#1], Sequence[A#0]
-error_inh_clash4.nit:15,7: Error: Incompatibles ancestors for A: SequenceRead[A#1], SequenceRead[A#0]
+error_inh_clash4.nit:15,7: Error: Incompatibles ancestors for A: Sequence[F], Sequence[E]
+error_inh_clash4.nit:15,7: Error: Incompatibles ancestors for A: SequenceRead[F], SequenceRead[E]
index ec31f82..1137621 100644 (file)
@@ -1 +1 @@
-test_multiconstraint_inh.nit:39,18--21: Redef Error: Wrong type for parameter `e'. found J, expected I[G#0] as in test_multiconstraint_inh#G#baz.
+test_multiconstraint_inh.nit:39,18--21: Redef Error: Wrong type for parameter `e'. found J, expected I[E] as in test_multiconstraint_inh#G#baz.
index c08210d..5fac7da 100644 (file)
@@ -1,4 +1,4 @@
-Runtime error: Cast failed. Expected `NativeArray#0`, got `Bool` (../lib/standard/collection/array.nit:754)
+Runtime error: Cast failed. Expected `E`, got `Bool` (../lib/standard/collection/array.nit:754)
 NativeString
 N
 Nit
index f4fbe66..51e3f54 100644 (file)
@@ -1,2 +1,2 @@
-test_paire.nit:45,7--10: Redef error: Pair is an imported class. Add the redef keyword to refine it.
-test_paire.nit:54,7--10: Redef error: Pair is an imported class. Add the redef keyword to refine it.
+test_paire.nit:45,27--39: Error: A formal parameter type `E' already exists
+test_paire.nit:54,20--25: Error: A formal parameter type `E' already exists
index dc98ae0..f393851 100644 (file)
@@ -42,7 +42,7 @@ private
                end
 end
 
-class Pair[E: Comparable, E: Comparable]
+class Pair[E: Comparable, F: Comparable]
 
        fun >(p: Pair[Comparable, Comparable]): Bool
                do
@@ -51,7 +51,7 @@ class Pair[E: Comparable, E: Comparable]
                end
 end
 
-class Pair[E: Int, E: Int]
+class Pair[E: Int, F: Int]
 
        fun sum: Int
                do