Locate declarations of modules, classes and properties on their identifier.
Signed-off-by: Jean Privat <jean@pryen.org>
# Location is set during AST building. Once built, location cannon be null
# However, manual instanciated nodes may need mode care
fun location: Location do return _location.as(not null)
+ # The location of the important part of the node (identifier or whatever)
+ fun hot_location: Location do return location
end
# Ancestor of all tokens
readable var _n_doc: nullable ADoc = null
readable var _n_kwmodule: TKwmodule
readable var _n_id: TId
+ redef fun hot_location do return n_id.location
end
class AImport super Prod end
class AStdImport
readable var _n_formaldefs: List[AFormaldef] = new List[AFormaldef]
readable var _n_superclasses: List[ASuperclass] = new List[ASuperclass]
readable var _n_propdefs: List[APropdef] = new List[APropdef]
+ redef fun hot_location do return n_id.location
end
class ATopClassdef
super AClassdef
readable var _n_readable: nullable AAble = null
readable var _n_writable: nullable AAble = null
readable var _n_expr: nullable AExpr = null
+ redef fun hot_location
+ do
+ if n_id != null then return n_id.location else return n_id2.location
+ end
end
class AMethPropdef
super APropdef
readable var _n_visibility: nullable AVisibility
readable var _n_methid: nullable AMethid = null
readable var _n_signature: nullable ASignature
+ redef fun hot_location
+ do
+ if n_methid != null then
+ return n_methid.location
+ else
+ return location
+ end
+ end
end
class ADeferredMethPropdef
super AMethPropdef
class AConcreteInitPropdef
super AConcreteMethPropdef
readable var _n_kwinit: TKwinit
+ redef fun hot_location do return n_kwinit.location
end
class AMainMethPropdef
super AConcreteMethPropdef
# Display an error for a given syntax node
fun error(n: nullable ANode, s: String)
do
- _tc.error(if n == null then null else n.location, s)
+ _tc.error(if n == null then null else n.hot_location, s)
end
# Add an error, show errors and quit
fun fatal_error(n: nullable ANode, s: String)
do
- _tc.fatal_error(if n == null then null else n.location, s)
+ _tc.fatal_error(if n == null then null else n.hot_location, s)
end
# Display a warning for a given syntax node
fun warning(n: nullable ANode, s: String)
do
- _tc.warning(if n == null then null else n.location, s)
+ _tc.warning(if n == null then null else n.hot_location, s)
end
# Check conformity and display error
-alt/base_attr5_alt1.nit:34,2--18: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt1.nit:34,6--8: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt11.nit:41,2--18: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt11.nit:41,6--8: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt12.nit:41,2--42,24: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
-alt/base_attr5_alt12.nit:41,2--42,24: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt12.nit:42,12--14: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt12.nit:42,12--14: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt13.nit:41,2--43,27: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt13.nit:43,6--8: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt14.nit:41,2--44,33: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
-alt/base_attr5_alt14.nit:41,2--44,33: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt14.nit:44,12--14: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt14.nit:44,12--14: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt16.nit:41,2--46,39: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt16.nit:46,12--14: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
-alt/base_attr5_alt21.nit:48,2--18: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt21.nit:48,2--18: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt21.nit:48,6--8: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt21.nit:48,6--8: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt22.nit:48,2--49,24: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt22.nit:49,12--14: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt23.nit:48,2--50,27: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt23.nit:48,2--50,27: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt23.nit:50,6--8: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt23.nit:50,6--8: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt24.nit:48,2--51,33: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt24.nit:51,12--14: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt25.nit:48,2--52,33: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt25.nit:52,6--8: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt3.nit:34,2--36,27: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt3.nit:36,6--8: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt5.nit:34,2--38,33: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt5.nit:34,2--38,33: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt5.nit:38,6--8: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt5.nit:38,6--8: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
-alt/base_attr5_alt6.nit:34,2--39,39: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt6.nit:39,12--14: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
-alt/base_control_flow_alt1.nit:26,1--30,2: Control error: Reached end of function (a 'return' with a value was expected).
-alt/base_control_flow_alt1.nit:33,1--41,2: Control error: Reached end of function (a 'return' with a value was expected).
+alt/base_control_flow_alt1.nit:26,5: Control error: Reached end of function (a 'return' with a value was expected).
+alt/base_control_flow_alt1.nit:33,5: Control error: Reached end of function (a 'return' with a value was expected).
-alt/base_init_inherit2_alt3.nit:75,1--81,7: Error: Explicit constructor required in N since multiple inheritance of constructor is forbiden. Conflicting classes are B, C. Costructors are base_init_inherit2_alt3::B::cb, base_init_inherit2_alt3::A::ca, base_init_inherit2_alt3::C::cc.
+alt/base_init_inherit2_alt3.nit:75,7: Error: Explicit constructor required in N since multiple inheritance of constructor is forbiden. Conflicting classes are B, C. Costructors are base_init_inherit2_alt3::B::cb, base_init_inherit2_alt3::A::ca, base_init_inherit2_alt3::C::cc.
-./base_init_inherit3.nit:85,2--88,7: Error: No property Q::foo is inherited. Remove the redef keyword to define a new property.
+./base_init_inherit3.nit:85,12--14: Error: No property Q::foo is inherited. Remove the redef keyword to define a new property.
-alt/base_init_linext2_alt2.nit:99,2--112,12: Error: there is no available compatible constrctor in B. Discarded candidates are base_init_linext2_alt2::B::initb, base_init_linext2_alt2::B::init_par, base_init_linext2_alt2::B::init_par2(Char).
+alt/base_init_linext2_alt2.nit:99,2--5: Error: there is no available compatible constrctor in B. Discarded candidates are base_init_linext2_alt2::B::initb, base_init_linext2_alt2::B::init_par, base_init_linext2_alt2::B::init_par2(Char).
+alt/base_init_linext2_alt4.nit:99,2--5: Error: there is no available compatible constrctor in B. Discarded candidates are base_init_linext2_alt4::B::initb, base_init_linext2_alt4::B::init_par, base_init_linext2_alt4::B::init_par2(Char).
alt/base_init_linext2_alt4.nit:105,3--7: Error: Constructor of B must be invoked before constructor of C
-alt/base_init_linext2_alt4.nit:99,2--113,12: Error: there is no available compatible constrctor in B. Discarded candidates are base_init_linext2_alt4::B::initb, base_init_linext2_alt4::B::init_par, base_init_linext2_alt4::B::init_par2(Char).
-alt/base_init_simple_alt1.nit:11,2--25: Error: No property B::init is inherited. Remove the redef keyword to define a new property.
-alt/base_init_simple_alt1.nit:12,2--31: Error: No property B::init2 is inherited. Remove the redef keyword to define a new property.
-alt/base_init_simple_alt1.nit:13,2--31: Error: No property B::init3 is inherited. Remove the redef keyword to define a new property.
+alt/base_init_simple_alt1.nit:11,8--11: Error: No property B::init is inherited. Remove the redef keyword to define a new property.
+alt/base_init_simple_alt1.nit:12,8--11: Error: No property B::init2 is inherited. Remove the redef keyword to define a new property.
+alt/base_init_simple_alt1.nit:13,8--11: Error: No property B::init3 is inherited. Remove the redef keyword to define a new property.
-./error_attr_2def.nit:19,2--18: Error: A property _toto is already defined in class A.
+./error_attr_2def.nit:19,6--10: Error: A property _toto is already defined in class A.
-alt/error_class_generic_alt1.nit:17,1--17: Redef error: Formal parameter arity missmatch; got 0, expected 1.
+alt/error_class_generic_alt1.nit:17,13--17: Redef error: Formal parameter arity missmatch; got 0, expected 1.
-alt/error_class_generic_alt3.nit:17,1--19,34: Redef error: Formal parameter arity missmatch; got 2, expected 1.
+alt/error_class_generic_alt3.nit:19,13--17: Redef error: Formal parameter arity missmatch; got 2, expected 1.
-alt/error_class_generic_alt4.nit:17,1--20,11: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt4.nit:20,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
-alt/error_class_generic_alt5.nit:17,1--21,20: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt5.nit:21,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
-alt/error_class_generic_alt6.nit:17,1--22,28: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt6.nit:22,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
-./error_cons_arity.nit:19,1--28: Error: A class C is already defined at line 17.
+./error_cons_arity.nit:19,7: Error: A class C is already defined at line 17.
-./error_cons_arity2.nit:20,1--17: Error: A class A is already defined at line 17.
+./error_cons_arity2.nit:20,7: Error: A class A is already defined at line 17.
-./error_constraint.nit:20,1--17: Error: A class A is already defined at line 18.
+./error_constraint.nit:20,7: Error: A class A is already defined at line 18.
-alt/error_defs_alt1.nit:19,1--20,32: Redef error: Object is an imported class. Add the redef keyword to refine it.
+alt/error_defs_alt1.nit:19,7--12: Redef error: Object is an imported class. Add the redef keyword to refine it.
-alt/error_defs_alt2.nit:26,2--39: Error: A property foo is already defined in class A.
+alt/error_defs_alt2.nit:26,6--8: Error: A property foo is already defined in class A.
-alt/error_defs_alt3.nit:26,1--27,32: Redef error: A::bar is an inherited property. To redefine it, add the redef keyword.
+alt/error_defs_alt3.nit:27,6--8: Redef error: A::bar is an inherited property. To redefine it, add the redef keyword.
-alt/error_defs_alt4.nit:28,1--29,29: Redef error: A::baz is an inherited property. To redefine it, add the redef keyword.
+alt/error_defs_alt4.nit:29,6--8: Redef error: A::baz is an inherited property. To redefine it, add the redef keyword.
-alt/error_defs_alt5.nit:28,1--30,35: Redef error: A::baz redefines Object::baz with 0 parameter(s).
-alt/error_defs_alt5.nit:28,1--30,35: Redef error: The procedure A::baz redefines the function Object::baz.
+alt/error_defs_alt5.nit:30,12--14: Redef error: A::baz redefines Object::baz with 0 parameter(s).
+alt/error_defs_alt5.nit:30,12--14: Redef error: The procedure A::baz redefines the function Object::baz.
-alt/error_defs_alt6.nit:35,1--36,33: Error: A class A is already defined at line 24.
+alt/error_defs_alt6.nit:35,7: Error: A class A is already defined at line 24.
-alt/error_defs_alt7.nit:35,1--39,33: Error: A class A is already defined at line 24.
+alt/error_defs_alt7.nit:38,13: Error: A class A is already defined at line 24.
-alt/error_defs_alt8.nit:35,1--42,39: Error: A class A is already defined at line 24.
+alt/error_defs_alt8.nit:41,13: Error: A class A is already defined at line 24.
-./error_fun_ret.nit:17,1--13: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
-./error_fun_ret2.nit:17,1--20,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret2.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
-./error_fun_ret3.nit:17,1--21,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret3.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
-./error_fun_ret4.nit:17,1--21,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret4.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
-./error_fun_ret5.nit:17,1--20,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret5.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
-./error_kern_attr_any.nit:18,2--16: Error: Attempt to define attribute _toto in the interface Object.
+./error_kern_attr_any.nit:18,6--10: Error: Attempt to define attribute _toto in the interface Object.
-./error_kern_attr_int.nit:18,2--18: Error: Attempt to define attribute _toto in the enum class Int.
+./error_kern_attr_int.nit:18,6--10: Error: Attempt to define attribute _toto in the enum class Int.
-./error_meth_2def.nit:19,2--17: Error: A property toto is already defined in class A.
+./error_meth_2def.nit:19,6--9: Error: A property toto is already defined in class A.
-./error_meth_2def2.nit:19,2--34: Error: A property toto is already defined in class A.
+./error_meth_2def2.nit:19,6--9: Error: A property toto is already defined in class A.
-alt/error_redef2_1alt1_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt1_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
alt/error_redef2_1alt1_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt1_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt2_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
alt/error_redef2_1alt2_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt2_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt3_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
alt/error_redef2_1alt3_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt3_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef2_1alt4_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
alt/error_redef2_1alt4_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt4_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
-alt/error_redef_1alt1_alt2.nit:26,2--27,20: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt2.nit:27,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt1_alt3.nit:26,2--28,15: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt3.nit:28,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt1_alt5.nit:26,2--30,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt5.nit:30,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt1_alt6.nit:26,2--31,32: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt6.nit:31,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt1_alt7.nit:26,2--32,30: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt1_alt7.nit:32,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
-alt/error_redef_1alt1_alt8.nit:26,2--33,42: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt1_alt8.nit:26,2--33,42: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt1_alt8.nit:33,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt8.nit:33,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt1_alt9.nit:34,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
alt/error_redef_1alt1_alt9.nit:34,15: Syntax error: untyped parameter.
-alt/error_redef_1alt1_alt9.nit:26,2--34,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt2_alt1.nit:26,2--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt2_alt1.nit:26,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_1alt2_alt4.nit:26,2--29,25: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt2_alt4.nit:29,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_1alt2_alt7.nit:26,2--32,30: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_1alt2_alt7.nit:26,2--32,30: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt2_alt7.nit:32,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt2_alt7.nit:32,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
-alt/error_redef_1alt2_alt8.nit:26,2--33,42: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt2_alt8.nit:33,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
-alt/error_redef_1alt3_alt1.nit:26,2--13: Control error: Reached end of function (a 'return' with a value was expected).
+alt/error_redef_1alt3_alt1.nit:26,12--13: Control error: Reached end of function (a 'return' with a value was expected).
-alt/error_redef_1alt3_alt2.nit:26,2--27,20: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt3_alt2.nit:26,2--27,20: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt3_alt2.nit:27,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt2.nit:27,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
-alt/error_redef_1alt3_alt3.nit:26,2--28,15: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt3.nit:28,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt3_alt5.nit:26,2--30,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt3_alt5.nit:26,2--30,37: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt3_alt5.nit:30,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt5.nit:30,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
-alt/error_redef_1alt3_alt6.nit:26,2--31,32: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt6.nit:31,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt3_alt8.nit:26,2--33,42: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt8.nit:33,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt9.nit:34,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
alt/error_redef_1alt3_alt9.nit:34,15: Syntax error: untyped parameter.
-alt/error_redef_1alt3_alt9.nit:26,2--34,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt4_alt1.nit:26,2--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt4_alt1.nit:26,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_1alt4_alt2.nit:26,2--27,20: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt4_alt2.nit:27,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
-alt/error_redef_1alt4_alt3.nit:26,2--28,15: Control error: Reached end of function (a 'return' with a value was expected).
+alt/error_redef_1alt4_alt3.nit:28,12--13: Control error: Reached end of function (a 'return' with a value was expected).
-alt/error_redef_1alt4_alt4.nit:26,2--29,25: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt4_alt4.nit:29,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_1alt4_alt5.nit:26,2--30,37: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt4_alt5.nit:30,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
-alt/error_redef_1alt4_alt7.nit:26,2--32,30: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt4_alt7.nit:32,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_alt1.nit:26,2--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt1.nit:26,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
-alt/error_redef_alt2.nit:26,2--27,20: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt2.nit:27,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt3.nit:28,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
alt/error_redef_alt3.nit:28,15: Error: Untyped parameter.
-alt/error_redef_alt3.nit:26,2--28,15: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
-alt/error_redef_alt4.nit:26,2--29,25: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt4.nit:29,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
-alt/error_redef_alt5.nit:26,2--30,37: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt5.nit:30,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt6.nit:31,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
alt/error_redef_alt6.nit:31,15: Error: Untyped parameter.
-alt/error_redef_alt6.nit:26,2--31,32: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
-alt/error_redef_alt7.nit:26,2--32,30: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt7.nit:32,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
-alt/error_redef_alt8.nit:26,2--33,42: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt8.nit:33,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt9.nit:34,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
alt/error_redef_alt9.nit:34,15: Syntax error: untyped parameter.
alt/error_redef_alt9.nit:34,15: Error: Untyped parameter.
-alt/error_redef_alt9.nit:26,2--34,37: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
-./error_ref_fun.nit:20,2--12: Control error: Reached end of function (a 'return' with a value was expected).
+./error_ref_fun.nit:20,12: Control error: Reached end of function (a 'return' with a value was expected).
-./error_ref_proc.nit:20,2--36: Redef error: The function C::r redefines the procedure C::r.
+./error_ref_proc.nit:20,12: Redef error: The function C::r redefines the procedure C::r.
-./error_spe_fun.nit:23,1--14: Control error: Reached end of function (a 'return' with a value was expected).
+./error_spe_fun.nit:23,11--14: Control error: Reached end of function (a 'return' with a value was expected).
-./error_spe_proc.nit:23,1--31: Redef error: The function B::toto redefines the procedure A::toto.
+./error_spe_proc.nit:23,11--14: Redef error: The function B::toto redefines the procedure A::toto.
-./test_multiconstraint.nit:64,1--67,11: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:70,1--74,11: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:64,7: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:70,7: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:64,1--67,11: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:70,1--74,11: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:64,7: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:70,7: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:64,1--67,11: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:70,1--74,11: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:64,7: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:70,7: Error: A class G is already defined at line 56.
-./test_paire.nit:45,1--50,43: Error: A class Pair is already defined at line 17.
-./test_paire.nit:54,1--58,25: Error: A class Pair is already defined at line 17.
+./test_paire.nit:45,7--10: Error: A class Pair is already defined at line 17.
+./test_paire.nit:54,7--10: Error: A class Pair is already defined at line 17.