Merge pull request #1078 from urbit/release-candidate-variance

variance fix: calling lead, zinc gates
This commit is contained in:
Joshua Reagan 2018-11-29 19:04:31 -06:00 committed by GitHub
commit b424543f9a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 29 additions and 18 deletions

View File

@ -1 +1 @@
806c604c2f0f9ee7eea2999e6bb15ed5a8abaa99 e71c57b4455c84062230b4277f95eb7047a26146

View File

@ -190,15 +190,8 @@
u3_noun pu_zem = u3h(u_zem); u3_noun pu_zem = u3h(u_zem);
u3_noun qu_zem = u3t(u_zem); u3_noun qu_zem = u3t(u_zem);
u3_noun zut; u3_noun zut;
u3_noun mut;
u3_noun pro; u3_noun pro;
mut = u3nt(c3__core,
u3k(p_sut),
u3nt(u3nt(u3k(ppq_sut), u3k(qpq_sut), c3__gold),
u3k(qq_sut),
u3k(rq_sut)));
#if 1 #if 1
if ( qpq_sut == c3__wet ) { if ( qpq_sut == c3__wet ) {
zut = u3nc(c3__wet, u3k(qu_zem)); zut = u3nc(c3__wet, u3k(qu_zem));
@ -214,7 +207,7 @@
u3nc(u3nc(u3_nul, u3k(axe)), u3k(lon)), u3nc(u3nc(u3_nul, u3k(axe)), u3k(lon)),
u3nt(c3n, u3nt(c3n,
u3qc_peg(2, pu_zem), u3qc_peg(2, pu_zem),
u3nt(u3nc(mut, zut), u3_nul, u3_nul))); u3nt(u3nc(u3k(sut), zut), u3_nul, u3_nul)));
u3z(zem); u3z(zem);
return pro; return pro;

View File

@ -62,6 +62,7 @@
u3_noun gat) u3_noun gat)
{ {
u3_noun p_typ, q_typ, pq_typ, qq_typ, rq_typ; u3_noun p_typ, q_typ, pq_typ, qq_typ, rq_typ;
u3_noun ppq_typ, qpq_typ, rpq_typ;
u3_noun h_gat, t_gat; u3_noun h_gat, t_gat;
if ( (c3n == u3du(typ)) || (c3__core != u3h(typ)) ) { if ( (c3n == u3du(typ)) || (c3__core != u3h(typ)) ) {
@ -69,12 +70,16 @@
} else if } else if
( (c3n == u3r_cell(u3t(typ), &p_typ, &q_typ)) || ( (c3n == u3r_cell(u3t(typ), &p_typ, &q_typ)) ||
(c3n == u3r_trel(q_typ, &pq_typ, &qq_typ, &rq_typ)) || (c3n == u3r_trel(q_typ, &pq_typ, &qq_typ, &rq_typ)) ||
(c3n == u3r_trel(pq_typ, &ppq_typ, &qpq_typ, &rpq_typ)) ||
(c3n == u3r_cell(gat, &h_gat, &t_gat)) ) (c3n == u3r_cell(gat, &h_gat, &t_gat)) )
{ {
return u3m_bail(c3__fail); return u3m_bail(c3__fail);
} else { } else {
u3_noun dox = u3nt u3_noun dox = u3nt(c3__core,
(c3__core, u3k(qq_typ), u3k(q_typ)); u3k(qq_typ),
u3nt(u3nt(u3k(ppq_typ), u3k(qpq_typ), c3__gold),
u3k(qq_typ),
u3k(rq_typ)));
if ( (c3__ash == u3h(gat)) || (c3__dry == u3h(gat)) ) { if ( (c3__ash == u3h(gat)) || (c3__dry == u3h(gat)) ) {
if ( (c3y == vet) && if ( (c3y == vet) &&

View File

@ -88,11 +88,26 @@
u3_noun pec = u3qfu_peel(van, sut, way, rpq_sut); u3_noun pec = u3qfu_peel(van, sut, way, rpq_sut);
u3_noun sam = u3h(pec); u3_noun sam = u3h(pec);
u3_noun con = u3t(pec); u3_noun con = u3t(pec);
u3_atom tow;
if ( c3y == c3a(sam, con) ) { if ( 1 == lat ) {
tow = 1;
} else {
tow = u3qc_cap(lat);
}
if ( (c3y == c3a(sam, con)) ||
((c3y == sam) && (tow == 2)) ||
((c3y == con) && (tow == 3)) )
{
pro = _cqfu_peek(van, p_sut, way, lat); pro = _cqfu_peek(van, p_sut, way, lat);
} }
else { else {
if ( way != c3__read ) {
return u3m_error("payload-block");
}
u3_noun typ; u3_noun typ;
{ {
@ -120,6 +135,7 @@
} }
u3z(pec); u3z(pec);
u3z(tow);
} }
else { else {
pro = c3__noun; pro = c3__noun;

View File

@ -233,11 +233,8 @@ static c3_c* _141_pen_loot_ha[] = {0};
static u3j_harm _141_pen__ut_crop_a[] = {{".2", u3wfu_crop}, {}}; static u3j_harm _141_pen__ut_crop_a[] = {{".2", u3wfu_crop}, {}};
static c3_c* _141_pen__ut_crop_ha[] = {0}; static c3_c* _141_pen__ut_crop_ha[] = {0};
static u3j_harm _141_pen__ut_fire_a[] = {{".2", u3wfu_fire}, {}};
// XX figure out why this is disabled static c3_c* _141_pen__ut_fire_ha[] = {0};
// static u3j_harm _141_pen__ut_fire_a[] = {{".2", u3wfu_fire}, {}};
// static c3_c* _141_pen__ut_fire_ha[] = {0};
static u3j_harm _141_pen__ut_fond_a[] = {{".2", u3wfu_fond}, {}}; static u3j_harm _141_pen__ut_fond_a[] = {{".2", u3wfu_fond}, {}};
static c3_c* _141_pen__ut_fond_ha[] = {0}; static c3_c* _141_pen__ut_fond_ha[] = {0};
static u3j_harm _141_pen__ut_fish_a[] = {{".2", u3wfu_fish}, {}}; static u3j_harm _141_pen__ut_fish_a[] = {{".2", u3wfu_fish}, {}};
@ -265,7 +262,7 @@ static u3j_core _141_pen__ut_d[] =
{ {
{ "crop", 7, _141_pen__ut_crop_a, 0, _141_pen__ut_crop_ha }, { "crop", 7, _141_pen__ut_crop_a, 0, _141_pen__ut_crop_ha },
{ "fond", 7, _141_pen__ut_fond_a, 0, _141_pen__ut_fond_ha }, { "fond", 7, _141_pen__ut_fond_a, 0, _141_pen__ut_fond_ha },
// { "fire", 7, _141_pen__ut_fire_a, 0, _141_pen__ut_fire_ha }, { "fire", 7, _141_pen__ut_fire_a, 0, _141_pen__ut_fire_ha },
{ "fish", 7, _141_pen__ut_fish_a, 0, _141_pen__ut_fish_ha }, { "fish", 7, _141_pen__ut_fish_a, 0, _141_pen__ut_fish_ha },
{ "fuse", 7, _141_pen__ut_fuse_a, 0, _141_pen__ut_fuse_ha }, { "fuse", 7, _141_pen__ut_fuse_a, 0, _141_pen__ut_fuse_ha },
{ "mint", 7, _141_pen__ut_mint_a, 0, _141_pen__ut_mint_ha }, { "mint", 7, _141_pen__ut_mint_a, 0, _141_pen__ut_mint_ha },