-void mmloader___ToolContext___warning(val_t self, val_t param0) {
- struct trace_t trace = {NULL, NULL, 40, LOCATE_mmloader___ToolContext___warning};
- static val_t once_value_4 = NIT_NULL; /* Once value for string variable[5]*/
- static val_t once_value_5 = NIT_NULL; /* Once value for string variable[5]*/
- val_t variable[6];
- struct WBT_ **closurevariable = NULL;
- trace.prev = tracehead; tracehead = &trace;
- trace.file = LOCATE_mmloader;
- /* Register variable[0]: Local variable */
- variable[0] = self;
- /* Register variable[1]: Local variable */
- variable[1] = param0;
- /* Register variable[2]: Method return value and escape marker */
- /* Register variable[3]: Result */
- variable[3] = ATTR_mmloader___ToolContext____opt_warn(variable[0]) /*ToolContext::_opt_warn*/;
- /* Register variable[3]: Result */
- variable[3] = CALL_opts___Option___value(variable[3])(variable[3]) /*Option::value*/;
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool((variable[3])==( TAG_Int(0)));
- if (UNTAG_Bool(variable[3])) { /*if*/
- goto return_label3;
- }
- /* Register variable[3]: Result */
- variable[3] = CALL_file___Object___stderr(variable[0])(variable[0]) /*Object::stderr*/;
- variable[4] = NEW_Array_array___Array___with_capacity(TAG_Int(3)) /*new Array[String]*/ /* Ensure var: Array (for super-string)*/;
- /* Register variable[5]: Once String constant */
- if (once_value_4 != NIT_NULL) variable[5] = once_value_4;
- else {
- variable[5] = NEW_String_string___String___with_native(BOX_NativeString(""), TAG_Int(0)) /*new String*/;
- once_value_4 = variable[5];
- }
- /* Register variable[5]: Result */
- /* Ensure var variable[5]: super-string element*/
- CALL_abstract_collection___SimpleCollection___add(variable[4])(variable[4], variable[5]) /*AbstractArray::add*/;
- variable[5] = variable[1] /*s*/ /* Ensure var: super-string element*/;
- CALL_abstract_collection___SimpleCollection___add(variable[4])(variable[4], variable[5]) /*AbstractArray::add*/;
- /* Register variable[5]: Once String constant */
- if (once_value_5 != NIT_NULL) variable[5] = once_value_5;
- else {
- variable[5] = NEW_String_string___String___with_native(BOX_NativeString("\n"), TAG_Int(1)) /*new String*/;
- once_value_5 = variable[5];
- }
- /* Register variable[5]: Result */
- /* Ensure var variable[5]: super-string element*/
- CALL_abstract_collection___SimpleCollection___add(variable[4])(variable[4], variable[5]) /*AbstractArray::add*/;
- /* Register variable[4]: Result */
- variable[4] = CALL_string___Object___to_s(variable[4])(variable[4]) /*Object::to_s*/;
- CALL_stream___OStream___write(variable[3])(variable[3], variable[4]) /*OFStream::write*/;
- /* Register variable[3]: Result */
- variable[3] = ATTR_mmloader___ToolContext____opt_warn(variable[0]) /*ToolContext::_opt_warn*/;
- /* Register variable[3]: Result */
- variable[3] = CALL_opts___Option___value(variable[3])(variable[3]) /*Option::value*/;
- /* Register variable[3]: Result */
- variable[3] = TAG_Bool((variable[3])==( TAG_Int(1)));
- if (UNTAG_Bool(variable[3])) { /*if*/
- /* Register variable[3]: Result */
- variable[3] = ATTR_mmloader___ToolContext____warning_count(variable[0]) /*ToolContext::_warning_count*/;
- /* Register variable[3]: Result */
- variable[3] = TAG_Int(UNTAG_Int(variable[3])+UNTAG_Int( TAG_Int(1)));
- ATTR_mmloader___ToolContext____warning_count(variable[0]) /*ToolContext::_warning_count*/ = variable[3];
- } else { /*if*/
- /* Register variable[3]: Result */
- variable[3] = ATTR_mmloader___ToolContext____error_count(variable[0]) /*ToolContext::_error_count*/;
- /* Register variable[3]: Result */
- variable[3] = TAG_Int(UNTAG_Int(variable[3])+UNTAG_Int( TAG_Int(1)));
- ATTR_mmloader___ToolContext____error_count(variable[0]) /*ToolContext::_error_count*/ = variable[3];
- }
- return_label3: while(false);
- tracehead = trace.prev;
+val_t mmloader___ToolContext___error_count(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_mmloader;
+ fra.me.line = 53;
+ fra.me.meth = LOCATE_mmloader___ToolContext___error_count;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./mmloader.nit:53 */
+ REGB0 = TAG_Bool(ATTR_mmloader___ToolContext____error_count(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_error_count", LOCATE_mmloader, 53);
+ }
+ REGB0 = ATTR_mmloader___ToolContext____error_count(fra.me.REG[0]);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t mmloader___ToolContext___warning_count(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_mmloader;
+ fra.me.line = 56;
+ fra.me.meth = LOCATE_mmloader___ToolContext___warning_count;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./mmloader.nit:56 */
+ REGB0 = TAG_Bool(ATTR_mmloader___ToolContext____warning_count(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_warning_count", LOCATE_mmloader, 56);
+ }
+ REGB0 = ATTR_mmloader___ToolContext____warning_count(fra.me.REG[0]);
+ stack_frame_head = fra.me.prev;
+ return REGB0;
+}
+val_t mmloader___ToolContext___log_directory(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_mmloader;
+ fra.me.line = 59;
+ fra.me.meth = LOCATE_mmloader___ToolContext___log_directory;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./mmloader.nit:59 */
+ REGB0 = TAG_Bool(ATTR_mmloader___ToolContext____log_directory(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_log_directory", LOCATE_mmloader, 59);
+ }
+ fra.me.REG[0] = ATTR_mmloader___ToolContext____log_directory(fra.me.REG[0]);
+ stack_frame_head = fra.me.prev;
+ return fra.me.REG[0];
+}
+void mmloader___ToolContext___check_errors(val_t p0){
+ struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ static val_t once_value_1; /* Once value */
+ static val_t once_value_2; /* Once value */
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_mmloader;
+ fra.me.line = 66;
+ fra.me.meth = LOCATE_mmloader___ToolContext___check_errors;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 7;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[2] = NIT_NULL;
+ fra.me.REG[3] = NIT_NULL;
+ fra.me.REG[4] = NIT_NULL;
+ fra.me.REG[5] = NIT_NULL;
+ fra.me.REG[6] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./mmloader.nit:68 */
+ REGB0 = TAG_Bool(ATTR_mmloader___ToolContext____messages(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader, 68);
+ }
+ fra.me.REG[1] = ATTR_mmloader___ToolContext____messages(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[1])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[1]);
+ /* ./mmloader.nit:68 */
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//kernel.nit:214 */
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
+ /* ./mmloader.nit:68 */
+ if (UNTAG_Bool(REGB1)) {
+ /* ./mmloader.nit:69 */
+ REGB1 = TAG_Bool(ATTR_mmloader___ToolContext____message_sorter(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_message_sorter", LOCATE_mmloader, 69);
+ }
+ fra.me.REG[1] = ATTR_mmloader___ToolContext____message_sorter(fra.me.REG[0]);
+ REGB1 = TAG_Bool(ATTR_mmloader___ToolContext____messages(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader, 69);
+ }
+ fra.me.REG[2] = ATTR_mmloader___ToolContext____messages(fra.me.REG[0]);
+ CALL_sorter___AbstractSorter___sort(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ /* ./mmloader.nit:71 */
+ REGB1 = TAG_Bool(ATTR_mmloader___ToolContext____messages(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader, 71);
+ }
+ fra.me.REG[2] = ATTR_mmloader___ToolContext____messages(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[1] = ATTR_array___Array____items(fra.me.REG[2]);
+ /* ./../lib/standard//collection//array.nit:237 */
+ while(1) {
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB0 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB0)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[3] = ((Nit_NativeArray)fra.me.REG[1])->val[UNTAG_Int(REGB1)];
+ /* ./mmloader.nit:72 */
+ fra.me.REG[4] = CALL_file___Object___stderr(fra.me.REG[0])(fra.me.REG[0]);
+ REGB0 = TAG_Int(3);
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_1) {
+ fra.me.REG[6] = BOX_NativeString("");
+ REGB0 = TAG_Int(0);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
+ once_value_1 = fra.me.REG[6];
+ register_static_object(&once_value_1);
+ } else fra.me.REG[6] = once_value_1;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
+ if (!once_value_2) {
+ fra.me.REG[3] = BOX_NativeString("\n");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_2 = fra.me.REG[3];
+ register_static_object(&once_value_2);
+ } else fra.me.REG[3] = once_value_2;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_stream___OStream___write(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB0 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB0 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB0));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = REGB0;
+ } else {
+ /* ./../lib/standard//collection//array.nit:237 */
+ goto label3;
+ }
+ }
+ label3: while(0);
+ /* ./mmloader.nit:75 */
+ REGB1 = TAG_Bool(ATTR_mmloader___ToolContext____messages(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_messages", LOCATE_mmloader, 75);
+ }
+ fra.me.REG[1] = ATTR_mmloader___ToolContext____messages(fra.me.REG[0]);
+ CALL_abstract_collection___RemovableCollection___clear(fra.me.REG[1])(fra.me.REG[1]);
+ }
+ /* ./mmloader.nit:78 */
+ REGB1 = CALL_mmloader___ToolContext___error_count(fra.me.REG[0])(fra.me.REG[0]);
+ REGB0 = TAG_Int(0);
+ /* ./../lib/standard//kernel.nit:214 */
+ REGB0 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB0));
+ /* ./mmloader.nit:78 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Int(1);
+ CALL_kernel___Object___exit(fra.me.REG[0])(fra.me.REG[0], REGB0);
+ }
+ stack_frame_head = fra.me.prev;