tests: add tests for multi-iterators
[nit.git] / c_src / nit__modelize_property.sep.0.h
index be9c4ed..d993f34 100644 (file)
 #include "nit.common.h"
-#define COLOR_nit__modelize_property__ToolContext___modelize_property_phase 45
+#define COLOR_nit__modelize_property__ToolContext___modelize_property_phase 0
 extern const char FILE_nit__modelize_property[];
-#define COLOR_nit__parser_nodes__AModule___n_classdefs 7
+#define COLOR_nit__parser_nodes__AModule___n_classdefs 11
 extern const char FILE_nit__parser_nodes[];
 val* nit___nit__ANodes___standard__abstract_collection__Collection__iterator(val* self);
-#define COLOR_standard__abstract_collection__Iterator__is_ok 34
-#define COLOR_standard__abstract_collection__Iterator__item 32
-#define COLOR_nit__modelize_class__AClassdef___all_defs 7
+#define COLOR_standard__abstract_collection__Iterator__is_ok 16
+#define COLOR_standard__abstract_collection__Iterator__item 17
+#define COLOR_nit__modelize_class__AClassdef___all_defs 8
 short int standard___standard__Array___standard__kernel__Object___61d_61d(val* self, val* p0);
 #define COLOR_nit__phase__Phase___toolcontext 0
 extern const char FILE_nit__phase[];
 val* nit__modelbuilder_base___ToolContext___modelbuilder(val* self);
 void nit__modelize_property___ModelBuilder___build_properties(val* self, val* p0);
-#define COLOR_standard__abstract_collection__Iterator__next 33
-#define COLOR_nit__modelize_property__ModelBuilder___mpropdef2npropdef 11
+#define COLOR_standard__abstract_collection__Iterator__next 18
+#define COLOR_standard__abstract_collection__Iterator__finish 19
+#define COLOR_nit__modelize_property__ModelBuilder___mpropdef2npropdef 0
 val* standard___standard__HashMap___standard__abstract_collection__MapRead__get_or_null(val* self, val* p0);
-#define COLOR_standard__kernel__Object___61d_61d 2
-#define COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext 1
+#define COLOR_standard__kernel__Object___61d_61d 4
+#define COLOR_nit__modelbuilder_base__ModelBuilder___toolcontext 10
 extern const char FILE_nit__modelbuilder_base[];
 void nit__phase___ToolContext___run_phases_on_npropdef(val* self, val* p0);
 extern const struct type type_nit__MMethodDef;
-#define COLOR_nit__model__MPropDef___mproperty 5
+#define COLOR_nit__model__MPropDef___mproperty 6
 extern const char FILE_nit__model[];
-#define COLOR_nit__model__MMethod___is_root_init 17
-#define COLOR_nit__modelize_class__ModelBuilder___mclassdef2nclassdef 9
+#define COLOR_nit__model__MMethod___is_root_init 18
+#define COLOR_nit__modelize_class__ModelBuilder___mclassdef2nclassdef 2
 extern const char FILE_nit__modelize_class[];
-#define COLOR_nit__model__MPropDef___mclassdef 4
+#define COLOR_nit__model__MPropDef___mclassdef 5
 val* NEW_standard__Array(const struct type* type);
 extern const struct type type_standard__Array__nit__AAttrPropdef;
 void standard___standard__Array___standard__kernel__Object__init(val* self);
-#define COLOR_nit__parser_nodes__AClassdef___n_propdefs 4
+#define COLOR_nit__parser_nodes__AClassdef___n_propdefs 9
 extern const struct type type_nit__AAttrPropdef;
 void standard___standard__Array___standard__abstract_collection__SimpleCollection__add(val* self, val* p0);
-#define COLOR_nit__modelize_property__AClassdef___build_properties_is_done 8
-#define COLOR_nit__modelize_class__AClassdef___mclassdef 6
-#define COLOR_nit__model__MClassDef___in_hierarchy 14
+#define COLOR_nit__modelize_property__AClassdef___build_properties_is_done 4
+#define COLOR_nit__modelize_class__AClassdef___mclassdef 7
+#define COLOR_nit__model__MClassDef___in_hierarchy 15
 val* poset___poset__POSetElement___direct_greaters(val* self);
-#define COLOR_standard__abstract_collection__Collection__iterator 37
-short int standard___standard__MapRead___has_key(val* self, val* p0);
+#define COLOR_standard__abstract_collection__Collection__iterator 25
+short int standard___standard__HashMap___standard__abstract_collection__MapRead__has_key(val* self, val* p0);
 val* standard___standard__HashMap___standard__abstract_collection__MapRead___91d_93d(val* self, val* p0);
 void nit__modelize_property___MClassDef___build_self_type(val* self, val* p0, val* p1);
 val* standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__iterator(val* self);
 short int standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__is_ok(val* self);
 val* standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__item(val* self);
-#define COLOR_nit__modelize_property__APropdef__build_property 83
-#define COLOR_nit__modelize_property__APropdef__build_signature 84
-#define COLOR_nit__modelize_property__APropdef__check_signature 85
+#define COLOR_nit__modelize_property__APropdef__build_property 40
+#define COLOR_nit__modelize_property__APropdef__build_signature 41
+extern const struct type type_nit__ATypePropdef;
+#define COLOR_nit__modelize_property__APropdef___mpropdef 4
+#define COLOR_nit__model__MVirtualTypeDef___bound 13
+#define COLOR_nit__model__MClassDef___bound_mtype 7
+#define COLOR_nit__model__MClassDef___mmodule 5
+short int nit__modelize_property___ModelBuilder___check_virtual_types_circularity(val* self, val* p0, val* p1, val* p2, val* p3);
+#define COLOR_nit__mmodule__MModule___model 29
+extern const char FILE_nit__mmodule[];
+#define COLOR_nit__model__Model___null_type 7
+void nit__modelize_property___ATypePropdef___APropdef__check_signature(val* self, val* p0);
+#define COLOR_nit__modelize_property__APropdef__check_signature 43
 void standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__next(val* self);
+void standard__array___standard__array__ArrayIterator___standard__abstract_collection__Iterator__finish(val* self);
 void nit__modelize_property___ModelBuilder___process_default_constructors(val* self, val* p0);
-#define COLOR_nit__modelize_property__ModelBuilder___the_root_init_mmethod 12
+#define COLOR_nit__modelize_property__ModelBuilder___the_root_init_mmethod 1
 short int nit___nit__MClassDef___is_intro(val* self);
-#define COLOR_nit__model__MClassDef___mclass 5
-#define COLOR_nit__model__MClass___name 5
+#define COLOR_nit__model__MClassDef___mclass 6
+#define COLOR_nit__model__MClass___name 6
 val* standard___standard__NativeString___to_s_with_length(char* self, long p0);
 val* NEW_nit__MMethod(const struct type* type);
 extern const struct type type_nit__MMethod;
-#define COLOR_nit__model__MClass___visibility 13
-#define COLOR_nit__model__MProperty__intro_mclassdef_61d 42
-#define COLOR_nit__model__MProperty__name_61d 43
-#define COLOR_nit__model__MProperty__visibility_61d 45
-#define COLOR_standard__kernel__Object__init 7
+#define COLOR_nit__model__MClass___visibility 14
+#define COLOR_nit__model__MProperty__intro_mclassdef_61d 31
+#define COLOR_nit__model__MProperty__name_61d 32
+#define COLOR_nit__model__MProperty__visibility_61d 33
+#define COLOR_standard__kernel__Object__init 0
 val* NEW_nit__MMethodDef(const struct type* type);
 #define COLOR_nit__parser_nodes__ANode___location 0
-#define COLOR_nit__model__MPropDef__mclassdef_61d 42
-#define COLOR_nit__model__MPropDef__mproperty_61d 44
-#define COLOR_nit__model__MPropDef__location_61d 46
+#define COLOR_nit__model__MPropDef__mclassdef_61d 27
+#define COLOR_nit__model__MPropDef__mproperty_61d 28
+#define COLOR_nit__model__MPropDef__location_61d 29
 extern const struct type type_standard__Array__nit__MParameter;
 val* NEW_nit__MSignature(const struct type* type);
 extern const struct type type_nit__MSignature;
-#define COLOR_nit__model__MSignature__mparameters_61d 62
-#define COLOR_nit__model__MSignature__return_mtype_61d 64
+#define COLOR_nit__model__MSignature__mparameters_61d 57
+#define COLOR_nit__model__MSignature__return_mtype_61d 58
 #define COLOR_nit__model__MMethodDef___msignature 13
 #define COLOR_nit__model__MMethodDef___new_msignature 14
-#define COLOR_nit__model__MMethod___is_init 16
-#define COLOR_nit__modelize_property__AClassdef___mfree_init 9
-extern const struct type type_standard__Array__standard__Object;
+#define COLOR_nit__model__MMethod___is_init 17
+#define COLOR_nit__modelize_property__AClassdef___mfree_init 5
 val* NEW_standard__NativeArray(int length, const struct type* type);
-extern const struct type type_standard__NativeArray__standard__Object;
-#define COLOR_standard__array__Array__with_native 73
-#define COLOR_standard__string__Object__to_s 9
+extern const struct type type_standard__NativeArray__standard__String;
+#define COLOR_standard__string__Object__to_s 3
+#define COLOR_standard__string__NativeArray__native_to_s 16
 void nit___nit__ToolContext___info(val* self, val* p0, long p1);
-#define COLOR_nit__model__MClass___kind 12
-#define COLOR_nit__model__MClassKind___need_init 1
-#define COLOR_nit__model__MClassDef___mpropdefs 16
+#define COLOR_nit__model__MClassDef___mpropdefs 17
 #define COLOR_nit__model__MProperty___name 5
 extern const struct type type_nit__AStdClassdef;
 extern const struct type type_standard__Array__nit__MProperty;
 extern const struct type type_nit__AMethPropdef;
-#define COLOR_nit__modelize_property__APropdef___mpropdef 16
-val* nit__annotation___Prod___get_single_annotation(val* self, val* p0, val* p1);
-short int nit___nit__MPropDef___is_intro(val* self);
-void nit___nit__ModelBuilder___error(val* self, val* p0, val* p1);
-#define COLOR_nit__model__MSignature___mparameters 5
+#define COLOR_nit__modelize_property__AMethPropdef___is_autoinit 9
+#define COLOR_nit__model__MSignature___mparameters 6
 #define COLOR_nit__model__MParameter___mtype 5
 val* NEW_nit__MParameter(const struct type* type);
 extern const struct type type_nit__MParameter;
 #define COLOR_nit__model__MParameter___name 4
-#define COLOR_nit__model__MParameter__name_61d 41
-#define COLOR_nit__model__MParameter__mtype_61d 43
-#define COLOR_nit__model__MParameter__is_vararg_61d 45
-#define COLOR_nit__modelize_property__AAttrPropdef___noinit 23
-#define COLOR_nit__modelize_property__AAttrPropdef___mreadpropdef 27
-#define COLOR_nit__modelize_property__AAttrPropdef___has_value 25
-val* standard___standard__Text___substring_from(val* self, long p0);
-#define COLOR_nit__model__MAttributeDef___static_mtype 13
-#define COLOR_nit__modelize_property__AAttrPropdef___mwritepropdef 28
-#define COLOR_nit__model__MClassDef___mmodule 4
-#define COLOR_nit__model__MClassDef___bound_mtype 6
+extern const struct type type_nit__MNullableType;
+#define COLOR_nit__model__MParameter__name_61d 26
+#define COLOR_nit__model__MParameter__mtype_61d 27
+#define COLOR_nit__model__MParameter__is_vararg_61d 28
+#define COLOR_nit__model__MParameter__is_default_61d 29
+#define COLOR_nit__model__MProperty___is_autoinit 11
+#define COLOR_nit__modelize_property__AAttrPropdef___mreadpropdef 17
+#define COLOR_nit__modelize_property__AAttrPropdef___noinit 13
+val* nit__annotation___Prod___get_single_annotation(val* self, val* p0, val* p1);
+#define COLOR_nit__modelize_property__AAttrPropdef___has_value 15
+#define COLOR_nit__model__MSignature___return_mtype 7
+#define COLOR_nit__modelize_property__AAttrPropdef___mwritepropdef 18
 val* nit___nit__MProperty___lookup_super_definitions(val* self, val* p0, val* p1);
 short int standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(val* self);
 #define COLOR_nit__model__MProperty___intro_mclassdef 4
-void nit___nit__ToolContext___error(val* self, val* p0, val* p1);
+val* nit___nit__ToolContext___error(val* self, val* p0, val* p1);
+void standard___standard__AbstractArray___standard__abstract_collection__RemovableCollection__clear(val* self);
+void nit___nit__ModelBuilder___error(val* self, val* p0, val* p1);
+#define COLOR_nit__parser_nodes__AAnnotation___n_args 14
+short int nit___nit__ANodes___standard__abstract_collection__Collection__is_empty(val* self);
+val* nit__literal___AExpr___as_id(val* self);
+#define COLOR_standard__string__String___43d 71
+val* nit___nit__ModelBuilder___try_get_mproperty_by_name(val* self, val* p0, val* p1, val* p2);
+#define COLOR_nit__model__MProperty___intro 13
+#define COLOR_nit__model__MClass___mclass_type 17
+val* nit___nit__MSignature___MType__resolve_for(val* self, val* p0, val* p1, val* p2, short int p3);
+#define COLOR_nit__model__MParameter___is_default 7
+#define COLOR_nit__model__MParameter___is_vararg 6
 val* standard___standard__SequenceRead___Collection__first(val* self);
 #define COLOR_standard__array__AbstractArrayRead___length 0
 extern const struct type type_standard__Int;
@@ -118,165 +137,183 @@ extern const char FILE_standard__kernel[];
 #define COLOR_nit__model__MMethodDef___initializers 15
 val* standard___standard__Array___standard__abstract_collection__SequenceRead___91d_93d(val* self, long p0);
 val* standard__string___Collection___join(val* self, val* p0);
-#define COLOR_nit__modelize_property__MClass___root_init 18
+void nit___nit__ModelBuilder___warning(val* self, val* p0, val* p1, val* p2);
+#define COLOR_nit__modelize_property__MClass___root_init 4
 void standard___standard__Sequence___prepend(val* self, val* p0);
 void standard___standard__Array___standard__abstract_collection__SimpleCollection__add_all(val* self, val* p0);
-#define COLOR_nit__modelize_property__MPropDef___has_supercall 12
-#define COLOR_nit__model__MType__as_notnullable 50
+#define COLOR_nit__modelize_property__MPropDef___has_supercall 4
+#define COLOR_nit__model__MType__undecorate 45
 extern const struct type type_nit__MClassType;
-#define COLOR_nit__model__MClassType___mclass 5
-#define COLOR_nit__model__MClass___intro 15
+#define COLOR_nit__model__MClassType___mclass 6
+#define COLOR_nit__model__MClass___intro 16
 extern const struct type type_nit__MVirtualType;
-#define COLOR_nit__model__MVirtualType___mproperty 5
+#define COLOR_nit__model__MVirtualType___mproperty 8
 #define COLOR_nit__model__MProperty___visibility 10
 extern const struct type type_nit__MParameterType;
+extern const struct type type_nit__MNullType;
 void nit___nit__ANode___debug(val* self, val* p0);
 val* nit___nit__MModule___visibility_for(val* self, val* p0);
 short int standard___standard__Comparable____62d(val* self, val* p0);
 extern const struct type type_nit__AType;
-#define COLOR_nit__parser_nodes__AType___n_types 6
-#define COLOR_nit__modelize_class__AType___mtype 7
+#define COLOR_nit__parser_nodes__AType___n_types 9
+#define COLOR_nit__modelbuilder_base__AType___mtype 4
 void nit__modelize_property___ModelBuilder___check_visibility(val* self, val* p0, val* p1, val* p2);
 extern const struct type type_nit__MGenericType;
-#define COLOR_nit__model__MGenericType___arguments 12
-#define COLOR_nit__modelize_property__MClassDef___mprop2npropdef 17
-val* nit___nit__ModelBuilder___try_get_mproperty_by_name(val* self, val* p0, val* p1, val* p2);
+#define COLOR_nit__model__MGenericType___arguments 17
+#define COLOR_nit__model__MVirtualTypeProp___mvirtualtype 16
+val* NEW_poset__POSet(const struct type* type);
+extern const struct type type_poset__POSet__nit__MType;
+val* NEW_standard__List(const struct type* type);
+extern const struct type type_standard__List__nit__MType;
+void standard___standard__Sequence___SimpleCollection__add(val* self, val* p0);
+short int standard___standard__List___standard__abstract_collection__Collection__is_empty(val* self);
+val* standard___standard__List___standard__abstract_collection__Sequence__pop(val* self);
+#define COLOR_nit__model__MType__need_anchor 28
+extern const struct type type_standard__Array__nit__MType;
+void standard___standard__Array___with_capacity(val* self, long p0);
+#define COLOR_nit__model__MProxyType___mtype 6
+void standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(val* self, val* p0);
+val* nit___nit__MProperty___lookup_definitions(val* self, val* p0, val* p1);
+short int poset___poset__POSet___has_edge(val* self, val* p0, val* p1);
+void poset___poset__POSet___add_edge(val* self, val* p0, val* p1);
+#define COLOR_nit__modelize_property__MClassDef___mprop2npropdef 4
 extern const struct type type_nit__MVirtualTypeProp;
-#define COLOR_nit__model__MProperty___intro 12
-val* nit__model_base___standard__Object___public_visibility(val* self);
+val* nit__model_base___standard__Sys___public_visibility(val* self);
 #define COLOR_nit__model__MVirtualTypeDef___is_fixed 14
 val* NEW_nit__MVirtualTypeDef(const struct type* type);
 extern const struct type type_nit__MVirtualTypeDef;
-#define COLOR_nit__model__MClassDef___location 7
-#define COLOR_nit__model__MClass___mclass_type 16
-#define COLOR_nit__model__MVirtualTypeDef___bound 13
+#define COLOR_nit__model__MClassDef___location 8
 #define COLOR_nullable__nit__modelize_property__APropdef__MPROPDEF 0
-#define COLOR_nit__modelbuilder_base__AVisibility__mvisibility 56
-val* nit__model_base___standard__Object___intrude_visibility(val* self);
-val* nit__model_base___standard__Object___private_visibility(val* self);
-val* nit__model_base___standard__Object___protected_visibility(val* self);
+#define COLOR_nit__modelbuilder_base__AVisibility__mvisibility 40
+val* nit__model_base___standard__Sys___intrude_visibility(val* self);
+val* nit__model_base___standard__Sys___private_visibility(val* self);
+val* nit__model_base___standard__Sys___protected_visibility(val* self);
 void nit___nit__ModelBuilder___advice(val* self, val* p0, val* p1, val* p2);
 #define COLOR_nit__parser_nodes__ADefinition___n_doc 10
 val* nit__modelbuilder_base___ADoc___to_mdoc(val* self);
 #define COLOR_nit__mdoc__MEntity___mdoc 0
 #define COLOR_nit__mdoc__MDoc___original_mentity 1
+short int nit___nit__MPropDef___is_intro(val* self);
 short int standard___standard__Comparable____62d_61d(val* self, val* p0);
 val* NEW_nit__MDeprecationInfo(const struct type* type);
 extern const struct type type_nit__MDeprecationInfo;
 #define COLOR_nit__mdoc__MDeprecationInfo___mdoc 0
 #define COLOR_nit__mdoc__MEntity___deprecation 1
-#define COLOR_standard__abstract_collection__MapRead___91d_93d 32
+#define COLOR_standard__abstract_collection__MapRead__has_key 18
+#define COLOR_standard__abstract_collection__MapRead___91d_93d 19
 #define COLOR_nit__location__Location___line_start 1
-val* BOX_standard__Int(long);
-#define COLOR_nit__model__MMethod___is_toplevel 15
-#define COLOR_nit__parser_nodes__ANode___parent 1
-extern const struct type type_nit__ATopClassdef;
-#define COLOR_nit__mmodule__MModule___mgroup 5
-#define COLOR_nit__modelbuilder_base__ModelBuilder___model 0
+val* standard__string___Int___Object__to_s(long self);
+#define COLOR_nit__mmodule__MModule___mgroup 30
+#define COLOR_nit__modelbuilder_base__ModelBuilder___model 9
 val* nit__model___Model___get_mproperties_by_name(val* self, val* p0);
 extern const char FILE_nit__mproject[];
-#define COLOR_nit__mproject__MGroup___mproject 5
+#define COLOR_nit__mproject__MGroup___mproject 8
 val* nit___nit__MProperty___nit__model_base__MEntity__full_name(val* self);
-#define COLOR_nit__modelize_property__ASignature___is_visited 8
-#define COLOR_nit__modelize_property__ASignature___param_names 9
-#define COLOR_nit__modelize_property__ASignature___param_types 10
-#define COLOR_nit__modelize_property__ASignature___vararg_rank 11
-#define COLOR_nit__modelize_property__ASignature___ret_type 12
-#define COLOR_nit__parser_nodes__ASignature___n_params 5
-#define COLOR_nit__parser_nodes__AParam___n_id 4
+#define COLOR_nit__modelize_property__ASignature___is_visited 4
+#define COLOR_nit__modelize_property__ASignature___param_names 5
+#define COLOR_nit__modelize_property__ASignature___param_types 6
+#define COLOR_nit__modelize_property__ASignature___vararg_rank 7
+#define COLOR_nit__modelize_property__ASignature___ret_type 8
+#define COLOR_nit__parser_nodes__ASignature___n_params 10
+#define COLOR_nit__parser_nodes__AParam___n_id 5
 val* nit__lexer_work___Token___text(val* self);
-#define COLOR_nit__parser_nodes__AParam___n_type 5
-val* nit__modelize_class___ModelBuilder___resolve_mtype(val* self, val* p0, val* p1, val* p2);
+#define COLOR_nit__parser_nodes__AParam___n_type 6
+val* nit___nit__ModelBuilder___resolve_mtype_unchecked(val* self, val* p0, val* p1, val* p2, short int p3);
 long standard___standard__Int___Discrete__successor(long self, long p0);
-#define COLOR_nit__parser_nodes__AParam___n_dotdotdot 6
-#define COLOR_nit__parser_nodes__ASignature___n_type 7
-#define COLOR_nit__modelize_property__AParam___mparameter 8
-#define COLOR_nit__parser_nodes__AMethPropdef___n_kwinit 19
-#define COLOR_nit__parser_nodes__AMethPropdef___n_methid 21
+#define COLOR_nit__parser_nodes__AParam___n_dotdotdot 7
+#define COLOR_nit__parser_nodes__ASignature___n_type 12
+val* nit___nit__ModelBuilder___resolve_mtype(val* self, val* p0, val* p1, val* p2);
+#define COLOR_nit__modelize_property__AParam___mparameter 4
+#define COLOR_nit__parser_nodes__AMethPropdef___n_kwinit 14
+#define COLOR_nit__parser_nodes__AMethPropdef___n_methid 16
+#define COLOR_nit__parser_nodes__ANode___parent 1
 extern const struct type type_nit__AModule;
-#define COLOR_nit__parser_nodes__AModule___n_moduledecl 4
-#define COLOR_nit__parser_nodes__AMethPropdef___n_signature 22
+#define COLOR_nit__parser_nodes__AModule___n_moduledecl 8
+#define COLOR_nit__parser_nodes__AMethPropdef___n_signature 17
 long nit___nit__ANodes___standard__abstract_collection__Collection__length(val* self);
 #define COLOR_nit__parser_nodes__ADefinition___n_visibility 12
 extern const struct type type_nit__APublicVisibility;
-#define COLOR_nit__parser_nodes__AMethPropdef___n_kwnew 20
+#define COLOR_nit__parser_nodes__AMethPropdef___n_kwnew 15
 extern const struct type type_nit__AIdMethid;
 #define COLOR_nit__parser_nodes__AIdMethid___n_id 4
 val* nit__parser_work___Prod___collect_text(val* self);
+#define COLOR_nit__modelize_property__AMethid__is_binary 40
+#define COLOR_nit__modelize_property__AMethid__min_arity 41
 short int nit__modelize_property___AMethPropdef___look_like_a_root_init(val* self, val* p0, val* p1);
 #define COLOR_nit__parser_nodes__ADefinition___n_kwredef 11
 extern const struct type type_nullable__nit__MMethod;
-#define COLOR_nit__parser_nodes__AMethPropdef___n_block 23
+#define COLOR_nit__parser_nodes__AMethPropdef___n_block 19
 extern const struct type type_nit__ABlockExpr;
 #define COLOR_nit__parser_nodes__ABlockExpr___n_expr 10
-short int nit___nit__ANodes___standard__abstract_collection__Collection__is_empty(val* self);
 val* nit__modelize_property___APropdef___new_property_visibility(val* self, val* p0, val* p1, val* p2);
-#define COLOR_nit__model__MMethod___is_new 18
+#define COLOR_nit__model__MMethod___is_new 19
+#define COLOR_nit__model__MClass___has_new_factory 19
+#define COLOR_nit__model__MMethod___is_toplevel 16
 short int nit__modelize_property___APropdef___check_redef_keyword(val* self, val* p0, val* p1, val* p2, short int p3, val* p4);
 extern const struct type type_nit__AMainMethPropdef;
 void nit__modelize_property___APropdef___check_redef_property_visibility(val* self, val* p0, val* p1, val* p2);
-#define COLOR_standard__abstract_collection__MapRead__iterator 35
-#define COLOR_standard__abstract_collection__MapIterator__is_ok 35
-#define COLOR_standard__abstract_collection__MapIterator__key 33
-#define COLOR_standard__abstract_collection__MapIterator__item 32
-#define COLOR_standard__abstract_collection__MapIterator__next 34
-#define COLOR_standard__abstract_collection__Map___91d_93d_61d 41
+#define COLOR_standard__abstract_collection__MapRead__iterator 17
+#define COLOR_standard__abstract_collection__MapIterator__is_ok 16
+#define COLOR_standard__abstract_collection__MapIterator__key 17
+#define COLOR_standard__abstract_collection__MapIterator__item 18
+#define COLOR_standard__abstract_collection__MapIterator__next 19
+#define COLOR_standard__abstract_collection__Map___91d_93d_61d 25
 void nit__modelize_property___APropdef___set_doc(val* self, val* p0, val* p1);
 void standard___standard__HashMap___standard__abstract_collection__Map___91d_93d_61d(val* self, val* p0, val* p1);
+#define COLOR_nit__modelize_property__AMethid__accept_special_last_parameter 42
+#define COLOR_nit__modelize_property__AMethid__return_is_mandatory 43
 extern const struct type type_standard__Array__standard__String;
-extern const struct type type_standard__Array__nit__MType;
 short int nit__modelize_property___ASignature___visit_signature(val* self, val* p0, val* p1);
-val* nit___nit__MSignature___MType__resolve_for(val* self, val* p0, val* p1, val* p2, short int p3);
 long nit___nit__MSignature___arity(val* self);
-#define COLOR_nit__model__MClassDef___supertypes 13
+#define COLOR_nit__model__MClassDef___supertypes 14
 val* nit___nit__MClassType___MType__anchor_to(val* self, val* p0, val* p1);
 val* nit___nit__ModelBuilder___try_get_mproperty_by_name2(val* self, val* p0, val* p1, val* p2, val* p3);
-#define COLOR_nit__model__MSignature___vararg_rank 7
-#define COLOR_nit__model__MSignature___return_mtype 6
+#define COLOR_nit__model__MSignature___vararg_rank 8
 val* nit___nit__ANodes___standard__abstract_collection__SequenceRead___91d_93d(val* self, long p0);
+short int standard___standard__Collection___not_empty(val* self);
+val* standard___standard__SequenceRead___last(val* self);
 #define COLOR_nit__model__MMethodDef___is_abstract 16
 #define COLOR_nit__model__MMethodDef___is_intern 17
-#define COLOR_nit__parser_nodes__AMethPropdef___n_extern_code_block 25
+#define COLOR_nit__parser_nodes__AMethPropdef___n_extern_code_block 22
 #define COLOR_nit__model__MMethodDef___is_extern 18
-short int nit___nit__MType___is_subtype(val* self, val* p0, val* p1, val* p2);
-#define COLOR_nit__modelize_property__AAttrPropdef___is_lazy 24
-#define COLOR_nit__modelize_property__AAttrPropdef___mlazypropdef 26
-#define COLOR_nit__parser_nodes__AAttrPropdef___n_id2 19
-val* nit__model___standard__Object___interface_kind(val* self);
-val* nit__model___standard__Object___enum_kind(val* self);
-val* nit__model___standard__Object___extern_kind(val* self);
+short int nit__modelize_property___ASignature___check_signature(val* self, val* p0, val* p1);
+short int nit___nit__ModelBuilder___check_sametype(val* self, val* p0, val* p1, val* p2, val* p3, val* p4);
+short int nit___nit__ModelBuilder___check_subtype(val* self, val* p0, val* p1, val* p2, val* p3, val* p4);
+void nit__modelize_property___AMethPropdef___APropdef__check_repeated_types(val* self, val* p0);
+val* nit___nit__MPropDef___nit__model_base__MEntity__name(val* self);
+#define COLOR_nit__modelize_property__AAttrPropdef___mtype 9
+#define COLOR_nit__modelize_property__AAttrPropdef___is_lazy 14
+#define COLOR_nit__modelize_property__AAttrPropdef___mlazypropdef 16
+#define COLOR_nit__parser_nodes__AAttrPropdef___n_id2 20
+#define COLOR_nit__model__MClass___kind 13
+#define COLOR_nit__model__MClassKind___need_init 1
 val* NEW_nit__MAttribute(const struct type* type);
 extern const struct type type_nit__MAttribute;
-#define COLOR_standard__string__String___43d 82
 val* NEW_nit__MAttributeDef(const struct type* type);
 extern const struct type type_nit__MAttributeDef;
-#define COLOR_nit__parser_nodes__AAttrPropdef___n_expr 21
-#define COLOR_nit__parser_nodes__AAttrPropdef___n_block 22
-val* nit__model_base___standard__Object___none_visibility(val* self);
-#define COLOR_nit__parser_nodes__AAnnotation___n_args 15
+extern const char FILE_nit__mdoc[];
+#define COLOR_nit__parser_nodes__AAttrPropdef___n_expr 23
+#define COLOR_nit__parser_nodes__AAttrPropdef___n_block 25
+val* nit__model_base___standard__Sys___none_visibility(val* self);
 val* nit__annotation___AAnnotation___arg_as_id(val* self, val* p0);
-#define COLOR_nit__parser_nodes__AAttrPropdef___n_type 20
-#define COLOR_nit__model__MType__resolve_for 45
+#define COLOR_nit__parser_nodes__AAttrPropdef___n_type 21
+#define COLOR_nit__model__MType__resolve_for 26
 extern const struct type type_nit__ANewExpr;
 #define COLOR_nit__parser_nodes__ANewExpr___n_type 11
 extern const struct type type_nit__AIntExpr;
 val* nit___nit__ModelBuilder___try_get_mclass_by_name(val* self, val* p0, val* p1, val* p2);
+extern const struct type type_nit__AByteExpr;
 extern const struct type type_nit__AFloatExpr;
 extern const struct type type_nit__ACharExpr;
 extern const struct type type_nit__ABoolExpr;
 extern const struct type type_nit__ASuperstringExpr;
 extern const struct type type_nit__AStringFormExpr;
-void standard___standard__Array___with_capacity(val* self, long p0);
-void standard___standard__AbstractArray___standard__abstract_collection__Sequence__push(val* self, val* p0);
+#define COLOR_nit__model__MAttributeDef___static_mtype 13
 val* nit__model___Model___get_mclasses_by_name(val* self, val* p0);
+void nit__modelize_property___AAttrPropdef___APropdef__check_repeated_types(val* self, val* p0);
 void nit__modelize_property___AAttrPropdef___check_method_signature(val* self, val* p0, val* p1);
-#define COLOR_nit__parser_nodes__ATypePropdef___n_id 19
+#define COLOR_nit__parser_nodes__ATypePropdef___n_id 13
 val* NEW_nit__MVirtualTypeProp(const struct type* type);
-#define COLOR_standard__string__Text__chars 46
+#define COLOR_standard__string__Text__chars 27
 extern const struct type type_standard__Char;
-void nit___nit__ModelBuilder___warning(val* self, val* p0, val* p1, val* p2);
-#define COLOR_nit__parser_nodes__ATypePropdef___n_type 20
-extern const struct type type_standard__Array__nit__MVirtualType;
-#define COLOR_nit__model__MVirtualTypeProp___mvirtualtype 15
-short int standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__has(val* self, val* p0);
-val* nit___nit__MVirtualType___MType__lookup_bound(val* self, val* p0, val* p1);
+#define COLOR_nit__parser_nodes__ATypePropdef___n_type 14