Ignore:
File:
1 edited

Legend:

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

    r074444f r38aaacc2  
    529529static void rdata_deleg_copy(rdata_deleg_t *src, rdata_deleg_t **dest)
    530530{
    531         (void) src; (void) dest;
    532         printf("Unimplemented: Copy delegate.\n");
    533         exit(1);
     531        *dest = rdata_deleg_new();
     532        (*dest)->obj = src->obj;
     533        (*dest)->sym = src->sym;
    534534}
    535535
     
    711711                break;
    712712        case vc_ref:
    713                 printf("ref(");
    714                 rdata_var_print(var->u.ref_v->vref);
    715                 printf(")");
     713                if (var->u.ref_v->vref != NULL) {
     714                        printf("ref(");
     715                        rdata_var_print(var->u.ref_v->vref);
     716                        printf(")");
     717                } else {
     718                        printf("nil");
     719                }
    716720                break;
    717721        case vc_deleg:
    718722                printf("deleg(");
    719                 if (var->u.deleg_v->obj != NULL) {
    720                         rdata_var_print(var->u.deleg_v->obj);
    721                         printf(",");
     723                if (var->u.deleg_v->sym != NULL) {
     724                        if (var->u.deleg_v->obj != NULL) {
     725                                rdata_var_print(var->u.deleg_v->obj);
     726                                printf(",");
     727                        }
     728                        symbol_print_fqn(var->u.deleg_v->sym);
     729                } else {
     730                        printf("nil");
    722731                }
    723                 symbol_print_fqn(var->u.deleg_v->sym);
    724732                printf(")");
    725733                break;
Note: See TracChangeset for help on using the changeset viewer.