Esempio n. 1
0
N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, semnodekindconstraints_oHADKQ703A40xFUb2Or4EQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* p0) {
	Tnode_bROa11lyF5vxEN9aYNbHmhw* result0;
	result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
	result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20), (*p0).info);
	asgnRefNoCycle((void**) (&(*result0).kindU.S3.strval), rawNewString(((NI) 10)));
	(*result0).kindU.S3.strval = addChar((*result0).kindU.S3.strval, 1);
	{
		NI LOC3;
		LOC3 = (NI)0;
		LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(p0);
		if (!(((NI) 2) <= LOC3)) goto LA4;
		{
			NI i_dXblwP9c0fT57IJBT9cidd0w;
			NI HEX3Atmp_iqP0XjvVfdwlykC4jWWcWQ;
			NI LOC7;
			NI res_tvTr9cfrvhfw6gavuvsPeCg;
			i_dXblwP9c0fT57IJBT9cidd0w = (NI)0;
			HEX3Atmp_iqP0XjvVfdwlykC4jWWcWQ = (NI)0;
			LOC7 = (NI)0;
			LOC7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(p0);
			HEX3Atmp_iqP0XjvVfdwlykC4jWWcWQ = (LOC7 - 1);
			res_tvTr9cfrvhfw6gavuvsPeCg = ((NI) 1);
			{
				while (1) {
					if (!(res_tvTr9cfrvhfw6gavuvsPeCg <= HEX3Atmp_iqP0XjvVfdwlykC4jWWcWQ)) goto LA9;
					i_dXblwP9c0fT57IJBT9cidd0w = res_tvTr9cfrvhfw6gavuvsPeCg;
					compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[i_dXblwP9c0fT57IJBT9cidd0w], (&(*result0).kindU.S3.strval));
					res_tvTr9cfrvhfw6gavuvsPeCg += ((NI) 1);
				} LA9: ;
			}
		}
		{
			if (!(((NI) 63) < ((*result0).kindU.S3.strval ? (*result0).kindU.S3.strval->Sup.len : 0))) goto LA12;
			internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*p0).info, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_19));
		}
		LA12: ;
	}
	goto LA1;
	LA4: ;
	{
		patternerror_WCa9bfuEYPAnEySVcJ29aYHw(p0);
	}
	LA1: ;
	add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns((&(*result0).kindU.S3.strval), ((Topcode_cKhgukabZvDBOVLlPOrptA) 1));
	return result0;
}
Esempio n. 2
0
N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, flattenstmts_kDuk7Mp6Hb4CD2EwZbGQ3g)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) {
	Tnode_bROa11lyF5vxEN9aYNbHmhw* result0;
	result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
	result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115), (*n0).info);
	unneststmts_9c5lwXyiq4AUtthHD0LdCvQ(n0, result0);
	{
		NI LOC3;
		LOC3 = (NI)0;
		LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(result0);
		if (!(LOC3 == ((NI) 1))) goto LA4;
		result0 = (*result0).kindU.S6.sons->data[((NI) 0)];
	}
	LA4: ;
	return result0;
}
Esempio n. 3
0
N_NIMCALL(NimStringDesc*, renderplainsymbolname_0mm4u02iK86TVZPOApjzQA)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) {
	NimStringDesc* result0;
	result0 = (NimStringDesc*)0;
	result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_2));
	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 31):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 53):
	{
		NI LOC2;
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC3;
		LOC2 = (NI)0;
		LOC2 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
		LOC3 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC3 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, (LOC2 - 1));
		result0 = renderplainsymbolname_0mm4u02iK86TVZPOApjzQA(LOC3);
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		result0 = copyString((*(*n0).kindU.S5.ident).s);
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		result0 = renderdefinitionname_htfLIUnR3bbLycMPnQGh9aA((*n0).kindU.S4.sym, NIM_TRUE);
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 43):
	{
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC7;
		LOC7 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC7 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 0));
		result0 = renderplainsymbolname_0mm4u02iK86TVZPOApjzQA(LOC7);
	}
	break;
	default:
	{
		NimStringDesc* LOC9;
		LOC9 = (NimStringDesc*)0;
		LOC9 = rawNewString(reprEnum((NI)(*n0).kind, (&NTI_G4E4Gxe7oI2Cm03rkiOzQw))->Sup.len + 29);
appendString(LOC9, ((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_3));
appendString(LOC9, reprEnum((NI)(*n0).kind, (&NTI_G4E4Gxe7oI2Cm03rkiOzQw)));
		internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*n0).info, LOC9);
	}
	break;
	}
	return result0;
}
Esempio n. 4
0
N_NIMCALL(void, unneststmts_9c5lwXyiq4AUtthHD0LdCvQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tnode_bROa11lyF5vxEN9aYNbHmhw* result0) {
	{
		if (!((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115))) goto LA3;
		{
			Tnode_bROa11lyF5vxEN9aYNbHmhw* x_L0fdn9avvsn3btXlMPccZNw;
			x_L0fdn9avvsn3btXlMPccZNw = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			{
				NI i_EWs3umbSmlVrXsMq7wWquA;
				NI HEX3Atmp_xU11G30nlnU0KasrgV45kw;
				NI LOC7;
				NI res_ekwFbROBHev5OOyiBW9cTyQ;
				i_EWs3umbSmlVrXsMq7wWquA = (NI)0;
				HEX3Atmp_xU11G30nlnU0KasrgV45kw = (NI)0;
				LOC7 = (NI)0;
				LOC7 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
				HEX3Atmp_xU11G30nlnU0KasrgV45kw = (LOC7 - 1);
				res_ekwFbROBHev5OOyiBW9cTyQ = ((NI) 0);
				{
					while (1) {
						if (!(res_ekwFbROBHev5OOyiBW9cTyQ <= HEX3Atmp_xU11G30nlnU0KasrgV45kw)) goto LA9;
						i_EWs3umbSmlVrXsMq7wWquA = res_ekwFbROBHev5OOyiBW9cTyQ;
						x_L0fdn9avvsn3btXlMPccZNw = (*n0).kindU.S6.sons->data[i_EWs3umbSmlVrXsMq7wWquA];
						unneststmts_9c5lwXyiq4AUtthHD0LdCvQ(x_L0fdn9avvsn3btXlMPccZNw, result0);
						res_ekwFbROBHev5OOyiBW9cTyQ += ((NI) 1);
					} LA9: ;
				}
			}
		}
	}
	goto LA1;
	LA3: ;
	{
		if (!!(((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 125) || (*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23)))) goto LA11;
		add_gCCf68XrWL79bKes6htzFjQ_3(result0, n0);
	}
	goto LA1;
	LA11: ;
	LA1: ;
}
Esempio n. 5
0
N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, wrapincomesfrom_YbfXH27kQZj5oIysAn7Rfg)(Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw info0, Tnode_bROa11lyF5vxEN9aYNbHmhw* res0) {
	Tnode_bROa11lyF5vxEN9aYNbHmhw* result0;
	result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
	result0 = res0;
	(*result0).info = info0;
	{
		NIM_BOOL LOC3;
		NI LOC5;
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC8;
		LOC3 = (NIM_BOOL)0;
		LOC3 = ((*result0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 115) || (*result0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 126));
		if (!(LOC3)) goto LA4;
		LOC5 = (NI)0;
		LOC5 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(result0);
		LOC3 = (((NI) 0) < LOC5);
		LA4: ;
		if (!LOC3) goto LA6;
		LOC8 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC8 = lastson_esDJA7239bJDiq4UrX9aHCjg(result0);
		(*LOC8).info = info0;
	}
	LA6: ;
	return result0;
}
Esempio n. 6
0
N_NIMCALL(Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw, checkforsideeffects_jZznHOk1Ngn1sF9cFDMhw5A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) {
	Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw result0;
{	result0 = (Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw)0;
	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 27):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 30):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 31):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 26):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 28):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 32):
	{
		Tnode_bROa11lyF5vxEN9aYNbHmhw* op0;
		op0 = (*n0).kindU.S6.sons->data[((NI) 0)];
		{
			NIM_BOOL LOC4;
			Tsym_AXG7xcvKqaxY6koRX1xkCw* s0;
			LOC4 = (NIM_BOOL)0;
			LOC4 = ((*op0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3));
			if (!(LOC4)) goto LA5;
			LOC4 = isroutine_inD0Nq051matsjc6UjX88gparampatterns((*op0).kindU.S4.sym);
			LA5: ;
			if (!LOC4) goto LA6;
			s0 = (*op0).kindU.S4.sym;
			{
				if (!(((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 11))&31U)))!=0)) goto LA10;
				result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 1);
				goto BeforeRet;
			}
			LA10: ;
			result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 2);
		}
		goto LA2;
		LA6: ;
		{
			if (!(((*(*op0).typ).flags &(1U<<((NU)(((Ttypeflag_x2m5g1NpbmDig4wLT3Ylhw) 1))&31U)))!=0)) goto LA13;
			result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 2);
		}
		goto LA2;
		LA13: ;
		{
			result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 1);
			goto BeforeRet;
		}
		LA2: ;
		{
			NI i_Qp9bLUiaPDXaTkLr6ii9cJtA;
			NI HEX3Atmp_eye872sSg0psw7fewxQHLw;
			NI LOC17;
			NI res_Oykjo4AMMf3LiUIzNm9c9buw;
			i_Qp9bLUiaPDXaTkLr6ii9cJtA = (NI)0;
			HEX3Atmp_eye872sSg0psw7fewxQHLw = (NI)0;
			LOC17 = (NI)0;
			LOC17 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_eye872sSg0psw7fewxQHLw = (LOC17 - 1);
			res_Oykjo4AMMf3LiUIzNm9c9buw = ((NI) 0);
			{
				while (1) {
					Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw ret0;
					if (!(res_Oykjo4AMMf3LiUIzNm9c9buw <= HEX3Atmp_eye872sSg0psw7fewxQHLw)) goto LA19;
					i_Qp9bLUiaPDXaTkLr6ii9cJtA = res_Oykjo4AMMf3LiUIzNm9c9buw;
					ret0 = checkforsideeffects_jZznHOk1Ngn1sF9cFDMhw5A((*n0).kindU.S6.sons->data[i_Qp9bLUiaPDXaTkLr6ii9cJtA]);
					{
						if (!(ret0 == ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 1))) goto LA22;
						result0 = ret0;
						goto BeforeRet;
					}
					goto LA20;
					LA22: ;
					{
						NIM_BOOL LOC25;
						LOC25 = (NIM_BOOL)0;
						LOC25 = (ret0 == ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 0));
						if (!(LOC25)) goto LA26;
						LOC25 = (result0 == ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 2));
						LA26: ;
						if (!LOC25) goto LA27;
						result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 0);
					}
					goto LA20;
					LA27: ;
					LA20: ;
					res_Oykjo4AMMf3LiUIzNm9c9buw += ((NI) 1);
				} LA19: ;
			}
		}
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23):
	{
		result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 2);
	}
	break;
	default:
	{
		result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 2);
		{
			NI i_Qp9bLUiaPDXaTkLr6ii9cJtA_2;
			NI HEX3Atmp_eye872sSg0psw7fewxQHLw_2;
			NI LOC32;
			NI res_Oykjo4AMMf3LiUIzNm9c9buw_2;
			i_Qp9bLUiaPDXaTkLr6ii9cJtA_2 = (NI)0;
			HEX3Atmp_eye872sSg0psw7fewxQHLw_2 = (NI)0;
			LOC32 = (NI)0;
			LOC32 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_eye872sSg0psw7fewxQHLw_2 = (LOC32 - 1);
			res_Oykjo4AMMf3LiUIzNm9c9buw_2 = ((NI) 0);
			{
				while (1) {
					Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw ret0;
					if (!(res_Oykjo4AMMf3LiUIzNm9c9buw_2 <= HEX3Atmp_eye872sSg0psw7fewxQHLw_2)) goto LA34;
					i_Qp9bLUiaPDXaTkLr6ii9cJtA_2 = res_Oykjo4AMMf3LiUIzNm9c9buw_2;
					ret0 = checkforsideeffects_jZznHOk1Ngn1sF9cFDMhw5A((*n0).kindU.S6.sons->data[i_Qp9bLUiaPDXaTkLr6ii9cJtA_2]);
					{
						if (!(ret0 == ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 1))) goto LA37;
						result0 = ret0;
						goto BeforeRet;
					}
					goto LA35;
					LA37: ;
					{
						NIM_BOOL LOC40;
						LOC40 = (NIM_BOOL)0;
						LOC40 = (ret0 == ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 0));
						if (!(LOC40)) goto LA41;
						LOC40 = (result0 == ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 2));
						LA41: ;
						if (!LOC40) goto LA42;
						result0 = ((Tsideeffectanalysis_39b55cGxMJkG5uRuPt6svRw) 0);
					}
					goto LA35;
					LA42: ;
					LA35: ;
					res_Oykjo4AMMf3LiUIzNm9c9buw_2 += ((NI) 1);
				} LA34: ;
			}
		}
	}
	break;
	}
	}BeforeRet: ;
	return result0;
}
Esempio n. 7
0
N_NIMCALL(void, compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A)(Tnode_bROa11lyF5vxEN9aYNbHmhw* p0, NimStringDesc** result0) {
{	switch ((*p0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 27):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 30):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 31):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 26):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 28):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 32):
	{
		Tident_4umxGerWTHGPwUms7Yqu3g* op0;
		{
			if (!!(((*(*p0).kindU.S6.sons->data[((NI) 0)]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2)))) goto LA4;
			patternerror_WCa9bfuEYPAnEySVcJ29aYHw((*p0).kindU.S6.sons->data[((NI) 0)]);
			goto BeforeRet;
		}
		LA4: ;
		op0 = (*(*p0).kindU.S6.sons->data[((NI) 0)]).kindU.S5.ident;
		{
			NI LOC8;
			LOC8 = (NI)0;
			LOC8 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(p0);
			if (!(LOC8 == ((NI) 3))) goto LA9;
			{
				NIM_BOOL LOC13;
				LOC13 = (NIM_BOOL)0;
				LOC13 = eqStrings((*op0).s, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_2));
				if (LOC13) goto LA14;
				LOC13 = ((*op0).Sup.id == ((NI) 49));
				LA14: ;
				if (!LOC13) goto LA15;
				compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[((NI) 1)], result0);
				compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[((NI) 2)], result0);
				add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 2));
			}
			goto LA11;
			LA15: ;
			{
				NIM_BOOL LOC18;
				LOC18 = (NIM_BOOL)0;
				LOC18 = eqStrings((*op0).s, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_3));
				if (LOC18) goto LA19;
				LOC18 = ((*op0).Sup.id == ((NI) 2));
				LA19: ;
				if (!LOC18) goto LA20;
				compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[((NI) 1)], result0);
				compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[((NI) 2)], result0);
				add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 3));
			}
			goto LA11;
			LA20: ;
			{
				patternerror_WCa9bfuEYPAnEySVcJ29aYHw(p0);
			}
			LA11: ;
		}
		goto LA6;
		LA9: ;
		{
			NIM_BOOL LOC24;
			NI LOC25;
			NIM_BOOL LOC27;
			LOC24 = (NIM_BOOL)0;
			LOC25 = (NI)0;
			LOC25 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(p0);
			LOC24 = (LOC25 == ((NI) 2));
			if (!(LOC24)) goto LA26;
			LOC27 = (NIM_BOOL)0;
			LOC27 = eqStrings((*op0).s, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_4));
			if (LOC27) goto LA28;
			LOC27 = ((*op0).Sup.id == ((NI) 45));
			LA28: ;
			LOC24 = LOC27;
			LA26: ;
			if (!LOC24) goto LA29;
			compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[((NI) 1)], result0);
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 4));
		}
		goto LA6;
		LA29: ;
		{
			patternerror_WCa9bfuEYPAnEySVcJ29aYHw(p0);
		}
		LA6: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 53):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 37):
	{
		{
			NI LOC35;
			LOC35 = (NI)0;
			LOC35 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(p0);
			if (!(LOC35 == ((NI) 1))) goto LA36;
			compileconstraints_9bwUcgT2L3sSIVcH2QkZg2A((*p0).kindU.S6.sons->data[((NI) 0)], result0);
		}
		goto LA33;
		LA36: ;
		{
			patternerror_WCa9bfuEYPAnEySVcJ29aYHw(p0);
		}
		LA33: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		NimStringDesc* spec0;
		spec0 = nsuNormalize((*(*p0).kindU.S5.ident).s);
		switch (hashString(spec0) & 15) {
		case 2: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_15))) goto LA50;
break;
		case 4: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_7))) goto LA42;
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_12))) goto LA47;
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_14))) goto LA49;
break;
		case 6: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_8))) goto LA43;
break;
		case 10: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_11))) goto LA46;
break;
		case 11: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_5))) goto LA40;
break;
		case 12: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_6))) goto LA41;
break;
		case 13: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_9))) goto LA44;
break;
		case 14: 
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_10))) goto LA45;
if (eqStrings(spec0, ((NimStringDesc*) &T_kdeXVhLeMhTeIyOxnAjnxA_13))) goto LA48;
break;
		}
		goto LA51;
		LA40: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 6));
		}
		goto LA52;
		LA41: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 7));
		}
		goto LA52;
		LA42: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 5));
		}
		goto LA52;
		LA43: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 8));
		}
		goto LA52;
		LA44: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 9));
		}
		goto LA52;
		LA45: ;
		{
			(*result0)->data[((NI) 0)] = 2;
		}
		goto LA52;
		LA46: ;
		{
			(*result0)->data[((NI) 0)] = 3;
		}
		goto LA52;
		LA47: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 12));
		}
		goto LA52;
		LA48: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 13));
		}
		goto LA52;
		LA49: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 14));
		}
		goto LA52;
		LA50: ;
		{
			add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 15));
		}
		goto LA52;
		LA51: ;
		{
			{
				NimStringDesc* LOC69;
				if (!NIM_FALSE) goto LA67;
				LOC69 = (NimStringDesc*)0;
				LOC69 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_kdeXVhLeMhTeIyOxnAjnxA_16);
				internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC69);
			}
			LA67: ;
			{
				Tsymkind_cNCW9acsSznmEccl1fgQwkw i_WeqxTV9b1NrdFV9bssYkobUA;
				NI res_RudMxzFNUtgvzfcumCNa3g;
				i_WeqxTV9b1NrdFV9bssYkobUA = (Tsymkind_cNCW9acsSznmEccl1fgQwkw)0;
				res_RudMxzFNUtgvzfcumCNa3g = ((NI) 0);
				{
					while (1) {
						if (!(res_RudMxzFNUtgvzfcumCNa3g <= ((NI) 24))) goto LA72;
						i_WeqxTV9b1NrdFV9bssYkobUA = ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) (res_RudMxzFNUtgvzfcumCNa3g));
						{
							NimStringDesc* LOC75;
							NI LOC76;
							LOC75 = (NimStringDesc*)0;
							LOC75 = copyStr(reprEnum((NI)i_WeqxTV9b1NrdFV9bssYkobUA, (&NTI_cNCW9acsSznmEccl1fgQwkw)), ((NI) 2));
							LOC76 = (NI)0;
							LOC76 = nsuCmpIgnoreStyle(LOC75, spec0);
							if (!(LOC76 == ((NI) 0))) goto LA77;
							add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 10));
							(*result0) = addChar((*result0), ((NIM_CHAR) (((NI) (i_WeqxTV9b1NrdFV9bssYkobUA)))));
							goto BeforeRet;
						}
						LA77: ;
						res_RudMxzFNUtgvzfcumCNa3g += ((NI) 1);
					} LA72: ;
				}
			}
			{
				NimStringDesc* LOC83;
				if (!NIM_FALSE) goto LA81;
				LOC83 = (NimStringDesc*)0;
				LOC83 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_kdeXVhLeMhTeIyOxnAjnxA_18);
				internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC83);
			}
			LA81: ;
			{
				Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw i_WeqxTV9b1NrdFV9bssYkobUA_2;
				NI res_RudMxzFNUtgvzfcumCNa3g_2;
				i_WeqxTV9b1NrdFV9bssYkobUA_2 = (Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw)0;
				res_RudMxzFNUtgvzfcumCNa3g_2 = ((NI) 0);
				{
					while (1) {
						if (!(res_RudMxzFNUtgvzfcumCNa3g_2 <= ((NI) 158))) goto LA86;
						i_WeqxTV9b1NrdFV9bssYkobUA_2 = ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) (res_RudMxzFNUtgvzfcumCNa3g_2));
						{
							NI LOC89;
							LOC89 = (NI)0;
							LOC89 = nsuCmpIgnoreStyle(reprEnum((NI)i_WeqxTV9b1NrdFV9bssYkobUA_2, (&NTI_G4E4Gxe7oI2Cm03rkiOzQw)), spec0);
							if (!(LOC89 == ((NI) 0))) goto LA90;
							add_9b9cetGbqmZ2rntk8RrPpv0gparampatterns(result0, ((Topcode_cKhgukabZvDBOVLlPOrptA) 11));
							(*result0) = addChar((*result0), ((NIM_CHAR) (((NI) (i_WeqxTV9b1NrdFV9bssYkobUA_2)))));
							goto BeforeRet;
						}
						LA90: ;
						res_RudMxzFNUtgvzfcumCNa3g_2 += ((NI) 1);
					} LA86: ;
				}
			}
			patternerror_WCa9bfuEYPAnEySVcJ29aYHw(p0);
		}
		LA52: ;
	}
	break;
	default:
	{
		patternerror_WCa9bfuEYPAnEySVcJ29aYHw(p0);
	}
	break;
	}
	}BeforeRet: ;
}
Esempio n. 8
0
N_NIMCALL(NIM_BOOL, isdeepconstexpr_FTbvAnf1y9b9c3Krp9bsHDTiw_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) {
	NIM_BOOL result0;
{	result0 = (NIM_BOOL)0;
	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 10):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 22):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 18):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23):
	{
		result0 = NIM_TRUE;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 33):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 34):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 58):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 59):
	{
		result0 = isdeepconstexpr_FTbvAnf1y9b9c3Krp9bsHDTiw_2((*n0).kindU.S6.sons->data[((NI) 1)]);
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 39):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 37):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 38):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 155):
	{
		{
			NI i_rbJQs9bVikYer6r9a79cFnLiA;
			NI HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ;
			NI HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ_2;
			NI LOC5;
			NI res_xOfmIi9bwp0PSAW8lzS6cqg;
			i_rbJQs9bVikYer6r9a79cFnLiA = (NI)0;
			HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ = (NI)0;
			HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ_2 = (NI)0;
			HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ = ((*n0).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 38));
			LOC5 = (NI)0;
			LOC5 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ_2 = (LOC5 - 1);
			res_xOfmIi9bwp0PSAW8lzS6cqg = ((NI) (HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ));
			{
				while (1) {
					if (!(res_xOfmIi9bwp0PSAW8lzS6cqg <= HEX3Atmp_8PtFyqxQrbcZQ9cNZ9aHnWzQ_2)) goto LA7;
					i_rbJQs9bVikYer6r9a79cFnLiA = res_xOfmIi9bwp0PSAW8lzS6cqg;
					{
						NIM_BOOL LOC10;
						LOC10 = (NIM_BOOL)0;
						LOC10 = isdeepconstexpr_FTbvAnf1y9b9c3Krp9bsHDTiw_2((*n0).kindU.S6.sons->data[i_rbJQs9bVikYer6r9a79cFnLiA]);
						if (!!(LOC10)) goto LA11;
						result0 = NIM_FALSE;
						goto BeforeRet;
					}
					LA11: ;
					res_xOfmIi9bwp0PSAW8lzS6cqg += ((NI) 1);
				} LA7: ;
			}
		}
		{
			if (!((*n0).typ == 0)) goto LA15;
			result0 = NIM_TRUE;
		}
		goto LA13;
		LA15: ;
		{
			Ttype_LTUWCZolpovw9cWE3JBWSUw* t0;
			t0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA((*n0).typ, 10256);
			{
				if (!((6291456 &((NU64)1<<((NU)((*t0).kind)&63U)))!=0)) goto LA20;
				result0 = NIM_FALSE;
				goto BeforeRet;
			}
			LA20: ;
			{
				NIM_BOOL LOC24;
				NIM_BOOL LOC26;
				LOC24 = (NIM_BOOL)0;
				LOC24 = !(((*t0).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 17)));
				if (LOC24) goto LA25;
				LOC26 = (NIM_BOOL)0;
				LOC26 = iscaseobj_FTbvAnf1y9b9c3Krp9bsHDTiw_3((*t0).n);
				LOC24 = !(LOC26);
				LA25: ;
				if (!LOC24) goto LA27;
				result0 = NIM_TRUE;
			}
			LA27: ;
		}
		LA13: ;
	}
	break;
	default:
	{
	}
	break;
	}
	}BeforeRet: ;
	return result0;
}
Esempio n. 9
0
N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, evaltemplate_xOup9aA9cJdjuapy5rkGnHBQ)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* tmpl0, Tsym_AXG7xcvKqaxY6koRX1xkCw* gensymowner0, NIM_BOOL fromhlo0) {
	Tnode_bROa11lyF5vxEN9aYNbHmhw* result0;
	Tnode_bROa11lyF5vxEN9aYNbHmhw* args0;
	Templctx_og0XwfDLUlsX2HzoVx0s3Q ctx0;
	Tnode_bROa11lyF5vxEN9aYNbHmhw* body0;
	result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
	evaltemplatecounter_jPNQnHnAL0wozxUYkowWUA += ((NI) 1);
	{
		if (!(((NI) 100) < evaltemplatecounter_jPNQnHnAL0wozxUYkowWUA)) goto LA3;
		globalerror_VpilfPWbplGz6ny7O9cfr2g_3((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 187), ((NimStringDesc*) &T_N0xGjswvcjwwH43PvVNJAg_2));
		result0 = n0;
	}
	LA3: ;
	args0 = evaltemplateargs_dw0jfqH3BrkE5IDOxRZp9cw(n0, tmpl0, fromhlo0);
	memset((void*)(&ctx0), 0, sizeof(ctx0));
	ctx0.owner = tmpl0;
	ctx0.gensymowner = gensymowner0;
	initidtable_9cUS2oaKn1IFXKjLdglPZHQ((&ctx0.mapping));
	body0 = getbody_eMf5HLowckpW9cDxAV9bNIZw(tmpl0);
	{
		NIM_BOOL LOC7;
		LOC7 = (NIM_BOOL)0;
		LOC7 = isatom_NyXYMHACmbtWJZnWqE9cJCAparampatterns(body0);
		if (!LOC7) goto LA8;
		result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 37), (*body0).info);
		evaltemplateaux_AHGrgjfRCGeqRF8aKpZ9apw(body0, args0, (&ctx0), result0);
		{
			NI LOC12;
			LOC12 = (NI)0;
			LOC12 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(result0);
			if (!(LOC12 == ((NI) 1))) goto LA13;
			result0 = (*result0).kindU.S6.sons->data[((NI) 0)];
		}
		goto LA10;
		LA13: ;
		{
			NimStringDesc* LOC16;
			LOC16 = (NimStringDesc*)0;
			LOC16 = rendertree_ppjdh9aQ5L0SGPF8yz1gZ9cA(result0, 4);
			localerror_VpilfPWbplGz6ny7O9cfr2g((*result0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 1), LOC16);
		}
		LA10: ;
	}
	goto LA5;
	LA8: ;
	{
		result0 = copynode_lz8T1F9c0YwEOpUnrAUYgjg(body0);
		{
			NI i_SNYOzy7RzNR8C5fM3A5wWQ;
			NI HEX3Atmp_nYz53CxK4Lv8EpLGchkEWg;
			NI LOC19;
			NI res_yGU1MAzLpa1QBpOBXdb9aQw;
			i_SNYOzy7RzNR8C5fM3A5wWQ = (NI)0;
			HEX3Atmp_nYz53CxK4Lv8EpLGchkEWg = (NI)0;
			LOC19 = (NI)0;
			LOC19 = safelen_CdME9baJhvveuPEDZE9bXoxAsigmatch(body0);
			HEX3Atmp_nYz53CxK4Lv8EpLGchkEWg = (NI)(LOC19 - ((NI) 1));
			res_yGU1MAzLpa1QBpOBXdb9aQw = ((NI) 0);
			{
				while (1) {
					if (!(res_yGU1MAzLpa1QBpOBXdb9aQw <= HEX3Atmp_nYz53CxK4Lv8EpLGchkEWg)) goto LA21;
					i_SNYOzy7RzNR8C5fM3A5wWQ = res_yGU1MAzLpa1QBpOBXdb9aQw;
					evaltemplateaux_AHGrgjfRCGeqRF8aKpZ9apw((*body0).kindU.S6.sons->data[i_SNYOzy7RzNR8C5fM3A5wWQ], args0, (&ctx0), result0);
					res_yGU1MAzLpa1QBpOBXdb9aQw += ((NI) 1);
				} LA21: ;
			}
		}
	}
	LA5: ;
	result0 = wrapincomesfrom_YbfXH27kQZj5oIysAn7Rfg((*n0).info, result0);
	evaltemplatecounter_jPNQnHnAL0wozxUYkowWUA -= ((NI) 1);
	return result0;
}
Esempio n. 10
0
N_NIMCALL(void, evaltemplateaux_AHGrgjfRCGeqRF8aKpZ9apw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* templ0, Tnode_bROa11lyF5vxEN9aYNbHmhw* actual0, Templctx_og0XwfDLUlsX2HzoVx0s3Q* c0, Tnode_bROa11lyF5vxEN9aYNbHmhw* result0) {
	switch ((*templ0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		Tsym_AXG7xcvKqaxY6koRX1xkCw* s0;
		s0 = (*templ0).kindU.S4.sym;
		{
			if (!((*(*s0).owner).Sup.id == (*(*c0).owner).Sup.id)) goto LA4;
			{
				NIM_BOOL LOC8;
				Tnode_bROa11lyF5vxEN9aYNbHmhw* x_bpH68CEPoNrC9czs9a6EqbOg;
				LOC8 = (NIM_BOOL)0;
				LOC8 = ((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 3));
				if (!(LOC8)) goto LA9;
				LOC8 = !((((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 31))&31U)))!=0));
				LA9: ;
				if (!LOC8) goto LA10;
				x_bpH68CEPoNrC9czs9a6EqbOg = (*actual0).kindU.S6.sons->data[(*s0).position];
				{
					if (!((*x_bpH68CEPoNrC9czs9a6EqbOg).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152))) goto LA14;
					{
						Tnode_bROa11lyF5vxEN9aYNbHmhw* y_sHgbS9bPoBpoZKm4v8bGWYg;
						y_sHgbS9bPoBpoZKm4v8bGWYg = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
						{
							NI i_UyOiZSYKpbQs42BU32yTQQ;
							NI HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg;
							NI LOC18;
							NI res_mrbSWFKRIi4XqJhjBWoMJg;
							i_UyOiZSYKpbQs42BU32yTQQ = (NI)0;
							HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg = (NI)0;
							LOC18 = (NI)0;
							LOC18 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(x_bpH68CEPoNrC9czs9a6EqbOg);
							HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg = (LOC18 - 1);
							res_mrbSWFKRIi4XqJhjBWoMJg = ((NI) 0);
							{
								while (1) {
									if (!(res_mrbSWFKRIi4XqJhjBWoMJg <= HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg)) goto LA20;
									i_UyOiZSYKpbQs42BU32yTQQ = res_mrbSWFKRIi4XqJhjBWoMJg;
									y_sHgbS9bPoBpoZKm4v8bGWYg = (*x_bpH68CEPoNrC9czs9a6EqbOg).kindU.S6.sons->data[i_UyOiZSYKpbQs42BU32yTQQ];
									add_gCCf68XrWL79bKes6htzFjQ_3(result0, y_sHgbS9bPoBpoZKm4v8bGWYg);
									res_mrbSWFKRIi4XqJhjBWoMJg += ((NI) 1);
								} LA20: ;
							}
						}
					}
				}
				goto LA12;
				LA14: ;
				{
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC22;
					LOC22 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC22 = copytree_lz8T1F9c0YwEOpUnrAUYgjg_2(x_bpH68CEPoNrC9czs9a6EqbOg);
					add_gCCf68XrWL79bKes6htzFjQ_3(result0, LOC22);
				}
				LA12: ;
			}
			goto LA6;
			LA10: ;
			{
				NIM_BOOL LOC24;
				NIM_BOOL LOC26;
				NIM_BOOL LOC27;
				Tnode_bROa11lyF5vxEN9aYNbHmhw* x_bpH68CEPoNrC9czs9a6EqbOg_2;
				NI LOC32;
				LOC24 = (NIM_BOOL)0;
				LOC24 = ((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 4));
				if (LOC24) goto LA25;
				LOC26 = (NIM_BOOL)0;
				LOC27 = (NIM_BOOL)0;
				LOC27 = ((*s0).kind == ((Tsymkind_cNCW9acsSznmEccl1fgQwkw) 7));
				if (!(LOC27)) goto LA28;
				LOC27 = !(((*s0).typ == NIM_NIL));
				LA28: ;
				LOC26 = LOC27;
				if (!(LOC26)) goto LA29;
				LOC26 = ((*(*s0).typ).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 12));
				LA29: ;
				LOC24 = LOC26;
				LA25: ;
				if (!LOC24) goto LA30;
				LOC32 = (NI)0;
				LOC32 = len_gG7hUAX9cA629ahMLVL3xN4w_2((*(*s0).owner).typ);
				x_bpH68CEPoNrC9czs9a6EqbOg_2 = (*actual0).kindU.S6.sons->data[(NI)((NI)(LOC32 + (*s0).position) - ((NI) 1))];
				{
					if (!((*x_bpH68CEPoNrC9czs9a6EqbOg_2).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152))) goto LA35;
					{
						Tnode_bROa11lyF5vxEN9aYNbHmhw* y_sHgbS9bPoBpoZKm4v8bGWYg_2;
						y_sHgbS9bPoBpoZKm4v8bGWYg_2 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
						{
							NI i_UyOiZSYKpbQs42BU32yTQQ_2;
							NI HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_2;
							NI LOC39;
							NI res_mrbSWFKRIi4XqJhjBWoMJg_2;
							i_UyOiZSYKpbQs42BU32yTQQ_2 = (NI)0;
							HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_2 = (NI)0;
							LOC39 = (NI)0;
							LOC39 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(x_bpH68CEPoNrC9czs9a6EqbOg_2);
							HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_2 = (LOC39 - 1);
							res_mrbSWFKRIi4XqJhjBWoMJg_2 = ((NI) 0);
							{
								while (1) {
									if (!(res_mrbSWFKRIi4XqJhjBWoMJg_2 <= HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_2)) goto LA41;
									i_UyOiZSYKpbQs42BU32yTQQ_2 = res_mrbSWFKRIi4XqJhjBWoMJg_2;
									y_sHgbS9bPoBpoZKm4v8bGWYg_2 = (*x_bpH68CEPoNrC9czs9a6EqbOg_2).kindU.S6.sons->data[i_UyOiZSYKpbQs42BU32yTQQ_2];
									add_gCCf68XrWL79bKes6htzFjQ_3(result0, y_sHgbS9bPoBpoZKm4v8bGWYg_2);
									res_mrbSWFKRIi4XqJhjBWoMJg_2 += ((NI) 1);
								} LA41: ;
							}
						}
					}
				}
				goto LA33;
				LA35: ;
				{
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC43;
					LOC43 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC43 = copytree_lz8T1F9c0YwEOpUnrAUYgjg_2(x_bpH68CEPoNrC9czs9a6EqbOg_2);
					add_gCCf68XrWL79bKes6htzFjQ_3(result0, LOC43);
				}
				LA33: ;
			}
			goto LA6;
			LA30: ;
			{
				Tsym_AXG7xcvKqaxY6koRX1xkCw* x0;
				Tidobj_raN9cHVgzmvaXisezY9aGg9cg* LOC50;
				TNimObject* LOC51;
				Tlineinfo_T9c3PM9bs7WZ4LIQfEici9cZw LOC58;
				Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC64;
				{
					NimStringDesc* LOC49;
					if (!!((((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 31))&31U)))!=0))) goto LA47;
					LOC49 = (NimStringDesc*)0;
					LOC49 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_N0xGjswvcjwwH43PvVNJAg_3);
					internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC49);
				}
				LA47: ;
				LOC50 = (Tidobj_raN9cHVgzmvaXisezY9aGg9cg*)0;
				LOC50 = &s0->Sup;
				LOC51 = (TNimObject*)0;
				LOC51 = idtableget_D12lVDWWPrKae8szg3EYLw((*c0).mapping, LOC50);
				x0 = ((Tsym_AXG7xcvKqaxY6koRX1xkCw*) (LOC51));
				{
					Tidobj_raN9cHVgzmvaXisezY9aGg9cg* LOC56;
					TNimObject* LOC57;
					if (!(x0 == NIM_NIL)) goto LA54;
					x0 = copysym_KkocQl2VXhKLz8kG9aC7GEw(s0, NIM_FALSE);
					asgnRefNoCycle((void**) (&(*x0).owner), (*c0).gensymowner);
					LOC56 = (Tidobj_raN9cHVgzmvaXisezY9aGg9cg*)0;
					LOC56 = &s0->Sup;
					LOC57 = (TNimObject*)0;
					LOC57 = &x0->Sup.Sup;
					idtableput_3gLsywwJ9bZDaf06DfKpYbw((&(*c0).mapping), LOC56, LOC57);
				}
				LA54: ;
				{
					if (!(*c0).instlines) goto LA61;
					LOC58 = (*actual0).info;
				}
				goto LA59;
				LA61: ;
				{
					LOC58 = (*templ0).info;
				}
				LA59: ;
				LOC64 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
				LOC64 = newsymnode_slQ2jWOFI1ND3N9c79b7b18g(x0, LOC58);
				add_gCCf68XrWL79bKes6htzFjQ_3(result0, LOC64);
			}
			LA6: ;
		}
		goto LA2;
		LA4: ;
		{
			Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC66;
			LOC66 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			LOC66 = copynode_HoisCusAu6Qks82zEN9cbNg((&(*c0)), templ0, actual0);
			add_gCCf68XrWL79bKes6htzFjQ_3(result0, LOC66);
		}
		LA2: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 0) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 4) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23):
	{
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC68;
		LOC68 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC68 = copynode_HoisCusAu6Qks82zEN9cbNg((&(*c0)), templ0, actual0);
		add_gCCf68XrWL79bKes6htzFjQ_3(result0, LOC68);
	}
	break;
	default:
	{
		Tnode_bROa11lyF5vxEN9aYNbHmhw* res0;
		res0 = copynode_HoisCusAu6Qks82zEN9cbNg((&(*c0)), templ0, actual0);
		{
			NI i_UyOiZSYKpbQs42BU32yTQQ_3;
			NI HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_3;
			NI LOC71;
			NI res_mrbSWFKRIi4XqJhjBWoMJg_3;
			i_UyOiZSYKpbQs42BU32yTQQ_3 = (NI)0;
			HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_3 = (NI)0;
			LOC71 = (NI)0;
			LOC71 = sonslen_qPWPHw7WgJeEVYUdcaRIig(templ0);
			HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_3 = (NI)(LOC71 - ((NI) 1));
			res_mrbSWFKRIi4XqJhjBWoMJg_3 = ((NI) 0);
			{
				while (1) {
					if (!(res_mrbSWFKRIi4XqJhjBWoMJg_3 <= HEX3Atmp_xrewkryzQlwNCc2YCCU9bXg_3)) goto LA73;
					i_UyOiZSYKpbQs42BU32yTQQ_3 = res_mrbSWFKRIi4XqJhjBWoMJg_3;
					evaltemplateaux_AHGrgjfRCGeqRF8aKpZ9apw((*templ0).kindU.S6.sons->data[i_UyOiZSYKpbQs42BU32yTQQ_3], actual0, c0, res0);
					res_mrbSWFKRIi4XqJhjBWoMJg_3 += ((NI) 1);
				} LA73: ;
			}
		}
		add_gCCf68XrWL79bKes6htzFjQ_3(result0, res0);
	}
	break;
	}
}
Esempio n. 11
0
N_NIMCALL(Tnode_bROa11lyF5vxEN9aYNbHmhw*, evaltemplateargs_dw0jfqH3BrkE5IDOxRZp9cw)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Tsym_AXG7xcvKqaxY6koRX1xkCw* s0, NIM_BOOL fromhlo0) {
	Tnode_bROa11lyF5vxEN9aYNbHmhw* result0;
	NI totalparams0;
	NI genericparams0;
	NI expectedregularparams0;
	NI LOC12;
	NI givenregularparams0;
	result0 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 27):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 29):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 30):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 31):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 26):
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 28):
	{
		NI LOC2;
		LOC2 = (NI)0;
		LOC2 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
		totalparams0 = (NI)(LOC2 - ((NI) 1));
	}
	break;
	default:
	{
		totalparams0 = ((NI) 0);
	}
	break;
	}
	{
		NIM_BOOL LOC6;
		LOC6 = (NIM_BOOL)0;
		LOC6 = (((*s0).flags &(1U<<((NU)(((Tsymflag_K9ay6LWMat9bUiT9bIbMxpDHw) 25))&31U)))!=0);
		if (LOC6) goto LA7;
		LOC6 = fromhlo0;
		LA7: ;
		if (!LOC6) goto LA8;
		genericparams0 = ((NI) 0);
	}
	goto LA4;
	LA8: ;
	{
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC11;
		LOC11 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC11 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen((*s0).ast, ((NI) 2));
		genericparams0 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(LOC11);
	}
	LA4: ;
	LOC12 = (NI)0;
	LOC12 = len_gG7hUAX9cA629ahMLVL3xN4w_2((*s0).typ);
	expectedregularparams0 = (LOC12 - 1);
	givenregularparams0 = (NI)(totalparams0 - genericparams0);
	{
		if (!(givenregularparams0 < ((NI) 0))) goto LA15;
		givenregularparams0 = ((NI) 0);
	}
	LA15: ;
	{
		if (!((NI)(expectedregularparams0 + genericparams0) < totalparams0)) goto LA19;
		globalerror_VpilfPWbplGz6ny7O9cfr2g_3((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 136), ((NimStringDesc*) &T_N0xGjswvcjwwH43PvVNJAg_2));
	}
	LA19: ;
	result0 = newnodei_PIqgSH9b0m7nFpOyXf9cpz5w(((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 152), (*n0).info);
	{
		NI i_PYl9cv9bQnghKQXyXdxMDYzg;
		NI res_TrLd5q7GRjzsRNmujZ5Kog;
		i_PYl9cv9bQnghKQXyXdxMDYzg = (NI)0;
		res_TrLd5q7GRjzsRNmujZ5Kog = ((NI) 1);
		{
			while (1) {
				if (!(res_TrLd5q7GRjzsRNmujZ5Kog <= givenregularparams0)) goto LA23;
				i_PYl9cv9bQnghKQXyXdxMDYzg = res_TrLd5q7GRjzsRNmujZ5Kog;
				addson_gCCf68XrWL79bKes6htzFjQ(result0, (*n0).kindU.S6.sons->data[i_PYl9cv9bQnghKQXyXdxMDYzg]);
				res_TrLd5q7GRjzsRNmujZ5Kog += ((NI) 1);
			} LA23: ;
		}
	}
	{
		NI i_PYl9cv9bQnghKQXyXdxMDYzg_2;
		NI HEX3Atmp_TikpdK7Q4mtvBGSlduHjng;
		NI res_TrLd5q7GRjzsRNmujZ5Kog_2;
		i_PYl9cv9bQnghKQXyXdxMDYzg_2 = (NI)0;
		HEX3Atmp_TikpdK7Q4mtvBGSlduHjng = (NI)0;
		HEX3Atmp_TikpdK7Q4mtvBGSlduHjng = (NI)(givenregularparams0 + ((NI) 1));
		res_TrLd5q7GRjzsRNmujZ5Kog_2 = HEX3Atmp_TikpdK7Q4mtvBGSlduHjng;
		{
			while (1) {
				Tnode_bROa11lyF5vxEN9aYNbHmhw* default_BdXr9c9bxIvQs559cCj7oBmLQ;
				if (!(res_TrLd5q7GRjzsRNmujZ5Kog_2 <= expectedregularparams0)) goto LA26;
				i_PYl9cv9bQnghKQXyXdxMDYzg_2 = res_TrLd5q7GRjzsRNmujZ5Kog_2;
				default_BdXr9c9bxIvQs559cCj7oBmLQ = (*(*(*(*(*s0).typ).n).kindU.S6.sons->data[i_PYl9cv9bQnghKQXyXdxMDYzg_2]).kindU.S4.sym).ast;
				{
					NIM_BOOL LOC29;
					LOC29 = (NIM_BOOL)0;
					LOC29 = (default_BdXr9c9bxIvQs559cCj7oBmLQ == 0);
					if (LOC29) goto LA30;
					LOC29 = ((*default_BdXr9c9bxIvQs559cCj7oBmLQ).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1));
					LA30: ;
					if (!LOC29) goto LA31;
					localerror_VpilfPWbplGz6ny7O9cfr2g((*n0).info, ((Tmsgkind_IGAWgv9aR2KqPKJfPZPEWaw) 136), ((NimStringDesc*) &T_N0xGjswvcjwwH43PvVNJAg_2));
					addson_gCCf68XrWL79bKes6htzFjQ(result0, emptynode_69ccLGuQ2mITw7zylZYtWcA);
				}
				goto LA27;
				LA31: ;
				{
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC34;
					LOC34 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC34 = copytree_lz8T1F9c0YwEOpUnrAUYgjg_2(default_BdXr9c9bxIvQs559cCj7oBmLQ);
					addson_gCCf68XrWL79bKes6htzFjQ(result0, LOC34);
				}
				LA27: ;
				res_TrLd5q7GRjzsRNmujZ5Kog_2 += ((NI) 1);
			} LA26: ;
		}
	}
	{
		NI i_PYl9cv9bQnghKQXyXdxMDYzg_3;
		NI res_TrLd5q7GRjzsRNmujZ5Kog_3;
		i_PYl9cv9bQnghKQXyXdxMDYzg_3 = (NI)0;
		res_TrLd5q7GRjzsRNmujZ5Kog_3 = ((NI) 1);
		{
			while (1) {
				if (!(res_TrLd5q7GRjzsRNmujZ5Kog_3 <= genericparams0)) goto LA37;
				i_PYl9cv9bQnghKQXyXdxMDYzg_3 = res_TrLd5q7GRjzsRNmujZ5Kog_3;
				addson_gCCf68XrWL79bKes6htzFjQ(result0, (*n0).kindU.S6.sons->data[(NI)(givenregularparams0 + i_PYl9cv9bQnghKQXyXdxMDYzg_3)]);
				res_TrLd5q7GRjzsRNmujZ5Kog_3 += ((NI) 1);
			} LA37: ;
		}
	}
	return result0;
}
Esempio n. 12
0
N_LIB_PRIVATE N_NIMCALL(tyObject_TNode_bROa11lyF5vxEN9aYNbHmhw*, getPragmaStmt_PG78PfsLry5P9aXm4OpkYGw)(tyObject_TNode_bROa11lyF5vxEN9aYNbHmhw* n, tyEnum_TSpecialWord_ycbpMCRV6Cd2eBh3X9biEiw w) {
	tyObject_TNode_bROa11lyF5vxEN9aYNbHmhw* result;
{	result = (tyObject_TNode_bROa11lyF5vxEN9aYNbHmhw*)0;
	switch ((*n).kind) {
	case ((tyEnum_TNodeKind_G4E4Gxe7oI2Cm03rkiOzQw) 115):
	{
		{
			NI i;
			NI colontmp_;
			NI i_2;
			i = (NI)0;
			colontmp_ = (NI)0;
			colontmp_ = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n);
			i_2 = ((NI) 0);
			{
				while (1) {
					if (!(i_2 < colontmp_)) goto LA4;
					i = i_2;
					result = getPragmaStmt_PG78PfsLry5P9aXm4OpkYGw((*n).kindU.S6.sons->data[i], w);
					{
						if (!!((result == NIM_NIL))) goto LA7_;
						goto LA2;
					}
					LA7_: ;
					i_2 += ((NI) 1);
				} LA4: ;
			}
		} LA2: ;
	}
	break;
	case ((tyEnum_TNodeKind_G4E4Gxe7oI2Cm03rkiOzQw) 90):
	{
		{
			NI i_3;
			NI colontmp__2;
			NI i_4;
			i_3 = (NI)0;
			colontmp__2 = (NI)0;
			colontmp__2 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n);
			i_4 = ((NI) 0);
			{
				while (1) {
					if (!(i_4 < colontmp__2)) goto LA12;
					i_3 = i_4;
					{
						tyEnum_TSpecialWord_ycbpMCRV6Cd2eBh3X9biEiw T15_;
						T15_ = (tyEnum_TSpecialWord_ycbpMCRV6Cd2eBh3X9biEiw)0;
						T15_ = whichPragma_tadMdqrtQd2cek9aFwyE1XQ((*n).kindU.S6.sons->data[i_3]);
						if (!(T15_ == w)) goto LA16_;
						result = (*n).kindU.S6.sons->data[i_3];
						goto BeforeRet_;
					}
					LA16_: ;
					i_4 += ((NI) 1);
				} LA12: ;
			}
		}
	}
	break;
	default:
	{
	}
	break;
	}
	}BeforeRet_: ;
	return result;
}
Esempio n. 13
0
N_NIMCALL(void, renderparamtypes_nsr8uxcmlhx5QS6xeTtlLA)(TY_sM4lkSb7zS6F7OVMvW9cffQ** found0, Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) {
{	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 76):
	{
		{
			NI i_0rMGonPChOwGyGaqScGiOg;
			NI HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ;
			NI LOC3;
			NI res_cPxH9ccENVRiMXrscMrDyAw;
			i_0rMGonPChOwGyGaqScGiOg = (NI)0;
			HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ = (NI)0;
			LOC3 = (NI)0;
			LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ = (LOC3 - 1);
			res_cPxH9ccENVRiMXrscMrDyAw = ((NI) 1);
			{
				while (1) {
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC6;
					if (!(res_cPxH9ccENVRiMXrscMrDyAw <= HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ)) goto LA5;
					i_0rMGonPChOwGyGaqScGiOg = res_cPxH9ccENVRiMXrscMrDyAw;
					LOC6 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC6 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, i_0rMGonPChOwGyGaqScGiOg);
					renderparamtypes_nsr8uxcmlhx5QS6xeTtlLA(found0, LOC6);
					res_cPxH9ccENVRiMXrscMrDyAw += ((NI) 1);
				} LA5: ;
			}
		}
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 35):
	{
		NI typepos0;
		NI LOC8;
		NimStringDesc* typestr0;
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC9;
		LOC8 = (NI)0;
		LOC8 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
		typepos0 = (NI)(LOC8 - ((NI) 2));
		LOC9 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC9 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, typepos0);
		typestr0 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC9);
		{
			NIM_BOOL LOC12;
			Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC14;
			Ttype_LTUWCZolpovw9cWE3JBWSUw* typ0;
			Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC17;
			LOC12 = (NIM_BOOL)0;
			LOC12 = ((typestr0 ? typestr0->Sup.len : 0) < ((NI) 1));
			if (!(LOC12)) goto LA13;
			LOC14 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			LOC14 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, (NI)(typepos0 + ((NI) 1)));
			LOC12 = !(((*LOC14).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 1)));
			LA13: ;
			if (!LOC12) goto LA15;
			LOC17 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			LOC17 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, (NI)(typepos0 + ((NI) 1)));
			typ0 = (*LOC17).typ;
			{
				if (!!((typ0 == 0))) goto LA20;
				typestr0 = typetostring_iUZlBdvGqNPVN17wd9aVBNw(typ0, ((Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw) 2));
			}
			LA20: ;
			{
				if (!((typestr0 ? typestr0->Sup.len : 0) < ((NI) 1))) goto LA24;
				goto BeforeRet;
			}
			LA24: ;
		}
		LA15: ;
		{
			NI i_0rMGonPChOwGyGaqScGiOg_2;
			NI HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ_2;
			NI res_cPxH9ccENVRiMXrscMrDyAw_2;
			i_0rMGonPChOwGyGaqScGiOg_2 = (NI)0;
			HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ_2 = (NI)0;
			HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ_2 = (typepos0 - 1);
			res_cPxH9ccENVRiMXrscMrDyAw_2 = ((NI) 0);
			{
				while (1) {
					NimStringDesc* LOC29;
					if (!(res_cPxH9ccENVRiMXrscMrDyAw_2 <= HEX3Atmp_8b0gUyUsj3vT9aTxmyLN5TQ_2)) goto LA28;
					i_0rMGonPChOwGyGaqScGiOg_2 = res_cPxH9ccENVRiMXrscMrDyAw_2;
					(*found0) = (TY_sM4lkSb7zS6F7OVMvW9cffQ*) incrSeqV2(&((*found0))->Sup, sizeof(NimStringDesc*));
					LOC29 = (NimStringDesc*)0;
					LOC29 = (*found0)->data[(*found0)->Sup.len]; (*found0)->data[(*found0)->Sup.len] = copyStringRC1(typestr0);
					if (LOC29) nimGCunrefNoCycle(LOC29);
					++(*found0)->Sup.len;
					res_cPxH9ccENVRiMXrscMrDyAw_2 += ((NI) 1);
				} LA28: ;
			}
		}
	}
	break;
	default:
	{
		NimStringDesc* LOC31;
		LOC31 = (NimStringDesc*)0;
		LOC31 = rawNewString(reprEnum((NI)(*n0).kind, (&NTI_G4E4Gxe7oI2Cm03rkiOzQw))->Sup.len + 31);
appendString(LOC31, ((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_11));
appendString(LOC31, reprEnum((NI)(*n0).kind, (&NTI_G4E4Gxe7oI2Cm03rkiOzQw)));
		internalerror_MXmtqrCmYwtOPkDCFgUWKQ((*n0).info, LOC31);
	}
	break;
	}
	}BeforeRet: ;
}
Esempio n. 14
0
N_NIMCALL(NimStringDesc*, rendertype_0mm4u02iK86TVZPOApjzQA_2)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0) {
	NimStringDesc* result0;
	result0 = (NimStringDesc*)0;
	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 2):
	{
		result0 = copyString((*(*n0).kindU.S5.ident).s);
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 3):
	{
		result0 = typetostring_iUZlBdvGqNPVN17wd9aVBNw((*(*n0).kindU.S4.sym).typ, ((Tprefereddesc_tnd4qt9c4xddV8oKV5zyusw) 0));
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 143):
	{
		{
			NI LOC6;
			Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC9;
			LOC6 = (NI)0;
			LOC6 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			if (!(LOC6 == ((NI) 1))) goto LA7;
			LOC9 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			LOC9 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 0));
			result0 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC9);
		}
		goto LA4;
		LA7: ;
		{
			result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_4));
		}
		LA4: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 141):
	{
		{
			NI LOC14;
			NimStringDesc* LOC17;
			Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC18;
			NimStringDesc* LOC19;
			LOC14 = (NI)0;
			LOC14 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			if (!(LOC14 == ((NI) 1))) goto LA15;
			LOC17 = (NimStringDesc*)0;
			LOC18 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			LOC18 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 0));
			LOC19 = (NimStringDesc*)0;
			LOC19 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC18);
			LOC17 = rawNewString(LOC19->Sup.len + 4);
appendString(LOC17, ((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_5));
appendString(LOC17, LOC19);
			result0 = LOC17;
		}
		goto LA12;
		LA15: ;
		{
			result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_6));
		}
		LA12: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 142):
	{
		{
			NI LOC24;
			NimStringDesc* LOC27;
			Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC28;
			NimStringDesc* LOC29;
			LOC24 = (NI)0;
			LOC24 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			if (!(LOC24 == ((NI) 1))) goto LA25;
			LOC27 = (NimStringDesc*)0;
			LOC28 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
			LOC28 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 0));
			LOC29 = (NimStringDesc*)0;
			LOC29 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC28);
			LOC27 = rawNewString(LOC29->Sup.len + 4);
appendString(LOC27, ((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_7));
appendString(LOC27, LOC29);
			result0 = LOC27;
		}
		goto LA22;
		LA25: ;
		{
			result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_8));
		}
		LA22: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 147):
	{
		Tnode_bROa11lyF5vxEN9aYNbHmhw* params0;
		params0 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 0));
		result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_9));
		{
			NI i_zDh3xLsdCIK0t7KVMqLiQw;
			NI HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA;
			NI LOC33;
			NI res_MMDv3rnDFdptO9bcoVMCjfg;
			i_zDh3xLsdCIK0t7KVMqLiQw = (NI)0;
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA = (NI)0;
			LOC33 = (NI)0;
			LOC33 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(params0);
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA = (LOC33 - 1);
			res_MMDv3rnDFdptO9bcoVMCjfg = ((NI) 1);
			{
				while (1) {
					NimStringDesc* LOC36;
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC37;
					NimStringDesc* LOC38;
					if (!(res_MMDv3rnDFdptO9bcoVMCjfg <= HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA)) goto LA35;
					i_zDh3xLsdCIK0t7KVMqLiQw = res_MMDv3rnDFdptO9bcoVMCjfg;
					LOC36 = (NimStringDesc*)0;
					LOC37 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC37 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(params0, i_zDh3xLsdCIK0t7KVMqLiQw);
					LOC38 = (NimStringDesc*)0;
					LOC38 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC37);
					LOC36 = rawNewString(LOC38->Sup.len + 1);
appendString(LOC36, LOC38);
appendChar(LOC36, 44);
					result0 = resizeString(result0, LOC36->Sup.len + 0);
appendString(result0, LOC36);
					res_MMDv3rnDFdptO9bcoVMCjfg += ((NI) 1);
				} LA35: ;
			}
		}
		result0->data[((result0 ? result0->Sup.len : 0) - 1)] = 41;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 35):
	{
		NI typepos0;
		NI LOC40;
		NimStringDesc* typestr0;
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC41;
		LOC40 = (NI)0;
		LOC40 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
		typepos0 = (NI)(LOC40 - ((NI) 2));
		LOC41 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC41 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, typepos0);
		typestr0 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC41);
		result0 = copyString(typestr0);
		{
			NI i_zDh3xLsdCIK0t7KVMqLiQw_2;
			NI HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_2;
			NI res_MMDv3rnDFdptO9bcoVMCjfg_2;
			i_zDh3xLsdCIK0t7KVMqLiQw_2 = (NI)0;
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_2 = (NI)0;
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_2 = (typepos0 - 1);
			res_MMDv3rnDFdptO9bcoVMCjfg_2 = ((NI) 1);
			{
				while (1) {
					NimStringDesc* LOC45;
					if (!(res_MMDv3rnDFdptO9bcoVMCjfg_2 <= HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_2)) goto LA44;
					i_zDh3xLsdCIK0t7KVMqLiQw_2 = res_MMDv3rnDFdptO9bcoVMCjfg_2;
					LOC45 = (NimStringDesc*)0;
					LOC45 = rawNewString(typestr0->Sup.len + 1);
appendChar(LOC45, 44);
appendString(LOC45, typestr0);
					result0 = resizeString(result0, LOC45->Sup.len + 0);
appendString(result0, LOC45);
					res_MMDv3rnDFdptO9bcoVMCjfg_2 += ((NI) 1);
				} LA44: ;
			}
		}
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 134):
	{
		result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_10));
		{
			NI i_zDh3xLsdCIK0t7KVMqLiQw_3;
			NI HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_3;
			NI LOC48;
			NI res_MMDv3rnDFdptO9bcoVMCjfg_3;
			i_zDh3xLsdCIK0t7KVMqLiQw_3 = (NI)0;
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_3 = (NI)0;
			LOC48 = (NI)0;
			LOC48 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_3 = (LOC48 - 1);
			res_MMDv3rnDFdptO9bcoVMCjfg_3 = ((NI) 0);
			{
				while (1) {
					NimStringDesc* LOC51;
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC52;
					NimStringDesc* LOC53;
					if (!(res_MMDv3rnDFdptO9bcoVMCjfg_3 <= HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_3)) goto LA50;
					i_zDh3xLsdCIK0t7KVMqLiQw_3 = res_MMDv3rnDFdptO9bcoVMCjfg_3;
					LOC51 = (NimStringDesc*)0;
					LOC52 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC52 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, i_zDh3xLsdCIK0t7KVMqLiQw_3);
					LOC53 = (NimStringDesc*)0;
					LOC53 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC52);
					LOC51 = rawNewString(LOC53->Sup.len + 1);
appendString(LOC51, LOC53);
appendChar(LOC51, 44);
					result0 = resizeString(result0, LOC51->Sup.len + 0);
appendString(result0, LOC51);
					res_MMDv3rnDFdptO9bcoVMCjfg_3 += ((NI) 1);
				} LA50: ;
			}
		}
		result0->data[((result0 ? result0->Sup.len : 0) - 1)] = 93;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 42):
	{
		NimStringDesc* LOC55;
		Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC56;
		NimStringDesc* LOC57;
		LOC55 = (NimStringDesc*)0;
		LOC56 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
		LOC56 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, ((NI) 0));
		LOC57 = (NimStringDesc*)0;
		LOC57 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC56);
		LOC55 = rawNewString(LOC57->Sup.len + 1);
appendString(LOC55, LOC57);
appendChar(LOC55, 91);
		result0 = LOC55;
		{
			NI i_zDh3xLsdCIK0t7KVMqLiQw_4;
			NI HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_4;
			NI LOC59;
			NI res_MMDv3rnDFdptO9bcoVMCjfg_4;
			i_zDh3xLsdCIK0t7KVMqLiQw_4 = (NI)0;
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_4 = (NI)0;
			LOC59 = (NI)0;
			LOC59 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_4 = (LOC59 - 1);
			res_MMDv3rnDFdptO9bcoVMCjfg_4 = ((NI) 1);
			{
				while (1) {
					NimStringDesc* LOC62;
					Tnode_bROa11lyF5vxEN9aYNbHmhw* LOC63;
					NimStringDesc* LOC64;
					if (!(res_MMDv3rnDFdptO9bcoVMCjfg_4 <= HEX3Atmp_Rciwn9bOOgT3oILPGFNqJzA_4)) goto LA61;
					i_zDh3xLsdCIK0t7KVMqLiQw_4 = res_MMDv3rnDFdptO9bcoVMCjfg_4;
					LOC62 = (NimStringDesc*)0;
					LOC63 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
					LOC63 = HEX5BHEX5D_4mGh5VHoHoaSkXDYdG6pyAitersgen(n0, i_zDh3xLsdCIK0t7KVMqLiQw_4);
					LOC64 = (NimStringDesc*)0;
					LOC64 = rendertype_0mm4u02iK86TVZPOApjzQA_2(LOC63);
					LOC62 = rawNewString(LOC64->Sup.len + 1);
appendString(LOC62, LOC64);
appendChar(LOC62, 44);
					result0 = resizeString(result0, LOC62->Sup.len + 0);
appendString(result0, LOC62);
					res_MMDv3rnDFdptO9bcoVMCjfg_4 += ((NI) 1);
				} LA61: ;
			}
		}
		result0->data[((result0 ? result0->Sup.len : 0) - 1)] = 93;
	}
	break;
	default:
	{
		result0 = copyString(((NimStringDesc*) &T_SgHDIVcSir4dkKoe0Xsi0A_2));
	}
	break;
	}
	return result0;
}
Esempio n. 15
0
N_NIMCALL(void, annotatetype_7COu9arEnQ1XMww311ztLAg)(Tnode_bROa11lyF5vxEN9aYNbHmhw* n0, Ttype_LTUWCZolpovw9cWE3JBWSUw* t0) {
	Ttype_LTUWCZolpovw9cWE3JBWSUw* x_TrkexJcopsrVrQ9bTo1marg;
	x_TrkexJcopsrVrQ9bTo1marg = skiptypes_pLCdCGDuirMe9cspwviV9aVA(t0, 1091856);
	switch ((*n0).kind) {
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 38):
	{
		Ttype_LTUWCZolpovw9cWE3JBWSUw* x0;
		x0 = skiptypes_pLCdCGDuirMe9cspwviV9aVA(t0, 14723344);
		asgnRefNoCycle((void**) (&(*n0).typ), t0);
		{
			NI i_kUf0lS505yB69cQAhB6HX8Q;
			NI HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag;
			NI LOC3;
			NI res_YwAZ2nFBRXVfR4KhSUchXg;
			i_kUf0lS505yB69cQAhB6HX8Q = (NI)0;
			HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag = (NI)0;
			LOC3 = (NI)0;
			LOC3 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
			HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag = (LOC3 - 1);
			res_YwAZ2nFBRXVfR4KhSUchXg = ((NI) 1);
			{
				while (1) {
					NI j0;
					Tsym_AXG7xcvKqaxY6koRX1xkCw* field0;
					if (!(res_YwAZ2nFBRXVfR4KhSUchXg <= HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag)) goto LA5;
					i_kUf0lS505yB69cQAhB6HX8Q = res_YwAZ2nFBRXVfR4KhSUchXg;
					j0 = (NI)(i_kUf0lS505yB69cQAhB6HX8Q - ((NI) 1));
					field0 = ithfield_dVbj6zm1IqxrJtEDcHXhiQ((*x0).n, (&j0));
					{
						NimStringDesc* LOC10;
						NimStringDesc* LOC11;
						if (!(field0 == 0)) goto LA8;
						LOC10 = (NimStringDesc*)0;
						LOC11 = (NimStringDesc*)0;
						LOC11 = nimIntToStr(i_kUf0lS505yB69cQAhB6HX8Q);
						LOC10 = rawNewString(LOC11->Sup.len + 23);
appendString(LOC10, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_4));
appendString(LOC10, LOC11);
						globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, LOC10);
					}
					goto LA6;
					LA8: ;
					{
						{
							NimStringDesc* LOC17;
							if (!!(((*(*n0).kindU.S6.sons->data[i_kUf0lS505yB69cQAhB6HX8Q]).kind == ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 34)))) goto LA15;
							LOC17 = (NimStringDesc*)0;
							LOC17 = HEX24_k53Ge4e9cDjc7y9c5uML7sPQ(T_gkmEeaIyT0wHpJzs9ciIEJg_5);
							internalerror_5XY9cUy7hZmUusM38U9cYYdw(LOC17);
						}
						LA15: ;
						annotatetype_7COu9arEnQ1XMww311ztLAg((*(*n0).kindU.S6.sons->data[i_kUf0lS505yB69cQAhB6HX8Q]).kindU.S6.sons->data[((NI) 1)], (*field0).typ);
					}
					LA6: ;
					res_YwAZ2nFBRXVfR4KhSUchXg += ((NI) 1);
				} LA5: ;
			}
		}
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 37):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 18))) goto LA21;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
			{
				NI i_kUf0lS505yB69cQAhB6HX8Q_2;
				NI HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_2;
				NI LOC24;
				NI res_YwAZ2nFBRXVfR4KhSUchXg_2;
				i_kUf0lS505yB69cQAhB6HX8Q_2 = (NI)0;
				HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_2 = (NI)0;
				LOC24 = (NI)0;
				LOC24 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
				HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_2 = (LOC24 - 1);
				res_YwAZ2nFBRXVfR4KhSUchXg_2 = ((NI) 0);
				{
					while (1) {
						if (!(res_YwAZ2nFBRXVfR4KhSUchXg_2 <= HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_2)) goto LA26;
						i_kUf0lS505yB69cQAhB6HX8Q_2 = res_YwAZ2nFBRXVfR4KhSUchXg_2;
						{
							NI LOC29;
							NimStringDesc* LOC32;
							NimStringDesc* LOC33;
							LOC29 = (NI)0;
							LOC29 = len_gG7hUAX9cA629ahMLVL3xN4w_2(x_TrkexJcopsrVrQ9bTo1marg);
							if (!(LOC29 <= i_kUf0lS505yB69cQAhB6HX8Q_2)) goto LA30;
							LOC32 = (NimStringDesc*)0;
							LOC33 = (NimStringDesc*)0;
							LOC33 = nimIntToStr(i_kUf0lS505yB69cQAhB6HX8Q_2);
							LOC32 = rawNewString(LOC33->Sup.len + 23);
appendString(LOC32, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_4));
appendString(LOC32, LOC33);
							globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, LOC32);
						}
						goto LA27;
						LA30: ;
						{
							annotatetype_7COu9arEnQ1XMww311ztLAg((*n0).kindU.S6.sons->data[i_kUf0lS505yB69cQAhB6HX8Q_2], (*x_TrkexJcopsrVrQ9bTo1marg).sons->data[i_kUf0lS505yB69cQAhB6HX8Q_2]);
						}
						LA27: ;
						res_YwAZ2nFBRXVfR4KhSUchXg_2 += ((NI) 1);
					} LA26: ;
				}
			}
		}
		goto LA19;
		LA21: ;
		{
			NIM_BOOL LOC36;
			LOC36 = (NIM_BOOL)0;
			LOC36 = ((*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25));
			if (!(LOC36)) goto LA37;
			LOC36 = ((*x_TrkexJcopsrVrQ9bTo1marg).callconv == ((Tcallingconvention_yjAJ8w0h1PBaSwSGJ3P7IA) 8));
			LA37: ;
			if (!LOC36) goto LA38;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
		}
		goto LA19;
		LA38: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_7));
		}
		LA19: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 41):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 16) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 24) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 27))) goto LA44;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
			{
				Tnode_bROa11lyF5vxEN9aYNbHmhw* m_1D8W5e9aGL3Te6BIaZYuL9bg;
				m_1D8W5e9aGL3Te6BIaZYuL9bg = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
				{
					NI i_kUf0lS505yB69cQAhB6HX8Q_3;
					NI HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_3;
					NI LOC48;
					NI res_YwAZ2nFBRXVfR4KhSUchXg_3;
					i_kUf0lS505yB69cQAhB6HX8Q_3 = (NI)0;
					HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_3 = (NI)0;
					LOC48 = (NI)0;
					LOC48 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
					HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_3 = (LOC48 - 1);
					res_YwAZ2nFBRXVfR4KhSUchXg_3 = ((NI) 0);
					{
						while (1) {
							Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC51;
							if (!(res_YwAZ2nFBRXVfR4KhSUchXg_3 <= HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_3)) goto LA50;
							i_kUf0lS505yB69cQAhB6HX8Q_3 = res_YwAZ2nFBRXVfR4KhSUchXg_3;
							m_1D8W5e9aGL3Te6BIaZYuL9bg = (*n0).kindU.S6.sons->data[i_kUf0lS505yB69cQAhB6HX8Q_3];
							LOC51 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0;
							LOC51 = elemtype_46gPaVDDGhiU69b2oKDJZuA_2(x_TrkexJcopsrVrQ9bTo1marg);
							annotatetype_7COu9arEnQ1XMww311ztLAg(m_1D8W5e9aGL3Te6BIaZYuL9bg, LOC51);
							res_YwAZ2nFBRXVfR4KhSUchXg_3 += ((NI) 1);
						} LA50: ;
					}
				}
			}
		}
		goto LA42;
		LA44: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_8));
		}
		LA42: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 39):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 19))) goto LA56;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
			{
				Tnode_bROa11lyF5vxEN9aYNbHmhw* m_1D8W5e9aGL3Te6BIaZYuL9bg_2;
				m_1D8W5e9aGL3Te6BIaZYuL9bg_2 = (Tnode_bROa11lyF5vxEN9aYNbHmhw*)0;
				{
					NI i_kUf0lS505yB69cQAhB6HX8Q_4;
					NI HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_4;
					NI LOC60;
					NI res_YwAZ2nFBRXVfR4KhSUchXg_4;
					i_kUf0lS505yB69cQAhB6HX8Q_4 = (NI)0;
					HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_4 = (NI)0;
					LOC60 = (NI)0;
					LOC60 = len_CdME9baJhvveuPEDZE9bXoxAlambdalifting(n0);
					HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_4 = (LOC60 - 1);
					res_YwAZ2nFBRXVfR4KhSUchXg_4 = ((NI) 0);
					{
						while (1) {
							Ttype_LTUWCZolpovw9cWE3JBWSUw* LOC63;
							if (!(res_YwAZ2nFBRXVfR4KhSUchXg_4 <= HEX3Atmp_ncv6LFvitMAnaYbW5BwT9ag_4)) goto LA62;
							i_kUf0lS505yB69cQAhB6HX8Q_4 = res_YwAZ2nFBRXVfR4KhSUchXg_4;
							m_1D8W5e9aGL3Te6BIaZYuL9bg_2 = (*n0).kindU.S6.sons->data[i_kUf0lS505yB69cQAhB6HX8Q_4];
							LOC63 = (Ttype_LTUWCZolpovw9cWE3JBWSUw*)0;
							LOC63 = elemtype_46gPaVDDGhiU69b2oKDJZuA_2(x_TrkexJcopsrVrQ9bTo1marg);
							annotatetype_7COu9arEnQ1XMww311ztLAg(m_1D8W5e9aGL3Te6BIaZYuL9bg_2, LOC63);
							res_YwAZ2nFBRXVfR4KhSUchXg_4 += ((NI) 1);
						} LA62: ;
					}
				}
			}
		}
		goto LA54;
		LA56: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_9));
		}
		LA54: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 16) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 19):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind >= ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 36) && (*x_TrkexJcopsrVrQ9bTo1marg).kind <= ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 39))) goto LA68;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
		}
		goto LA66;
		LA68: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_10));
		}
		LA66: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 5) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 15):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind >= ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 31) && (*x_TrkexJcopsrVrQ9bTo1marg).kind <= ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 44) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 1) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 2) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 14))) goto LA74;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
		}
		goto LA72;
		LA74: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_11));
		}
		LA72: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 20) ... ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 22):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 28) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 29))) goto LA80;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
		}
		goto LA78;
		LA80: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_12));
		}
		LA78: ;
	}
	break;
	case ((Tnodekind_G4E4Gxe7oI2Cm03rkiOzQw) 23):
	{
		{
			if (!((*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 26) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 29) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 22) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 21) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 24) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 25) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 28) || (*x_TrkexJcopsrVrQ9bTo1marg).kind == ((Ttypekind_9a3YiReNVD0IJHWFKgXRe9ag) 50))) goto LA86;
			asgnRefNoCycle((void**) (&(*n0).typ), t0);
		}
		goto LA84;
		LA86: ;
		{
			globalerror_GarD0CQJ5aQhoHekHYinVQ_2((*n0).info, ((NimStringDesc*) &T_gkmEeaIyT0wHpJzs9ciIEJg_13));
		}
		LA84: ;
	}
	break;
	default:
	{
	}
	break;
	}
}