Changeset 074444f in mainline for uspace/app/sbi/src/p_type.c


Ignore:
Timestamp:
2010-04-10T11:15:33Z (14 years ago)
Author:
Jiri Svoboda <jiri@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
1ef0fc3, 38aaacc2
Parents:
23de644
Message:

Update SBI to rev. 184.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/sbi/src/p_type.c

    r23de644 r074444f  
    7878static stree_texpr_t *parse_tapply(parse_t *parse)
    7979{
    80         stree_texpr_t *a, *b, *tmp;
     80        stree_texpr_t *gtype;
     81        stree_texpr_t *aexpr;
     82        stree_texpr_t *targ;
    8183        stree_tapply_t *tapply;
    8284
    83         a = parse_tpostfix(parse);
     85        gtype = parse_tpostfix(parse);
     86        if (lcur_lc(parse) != lc_slash)
     87                return gtype;
     88
     89        tapply = stree_tapply_new();
     90        tapply->gtype = gtype;
     91        list_init(&tapply->targs);
     92
    8493        while (lcur_lc(parse) == lc_slash) {
    8594
     
    8897
    8998                lskip(parse);
    90                 b = parse_tpostfix(parse);
    91 
    92                 tapply = stree_tapply_new();
    93                 tapply->gtype = a;
    94                 tapply->targ = b;
    95 
    96                 tmp = stree_texpr_new(tc_tapply);
    97                 tmp->u.tapply = tapply;
    98                 a = tmp;
    99         }
    100 
    101         return a;
     99                targ = parse_tpostfix(parse);
     100
     101                list_append(&tapply->targs, targ);
     102        }
     103
     104        aexpr = stree_texpr_new(tc_tapply);
     105        aexpr->u.tapply = tapply;
     106        return aexpr;
    102107}
    103108
     
    224229                texpr->u.tnameref = parse_tnameref(parse);
    225230                break;
     231        case lc_bool:
     232        case lc_char:
    226233        case lc_int:
    227234        case lc_string:
     
    249256
    250257        switch (lcur_lc(parse)) {
     258        case lc_bool:
     259                tlc = tlc_bool;
     260                break;
     261        case lc_char:
     262                tlc = tlc_char;
     263                break;
    251264        case lc_int:
    252265                tlc = tlc_int;
Note: See TracChangeset for help on using the changeset viewer.