pike.git / src / cpp.cmod

version» Context lines:

pike.git/src/cpp.cmod:226:    init_string_builder(&s, 0);    if(d->magic)    {    struct pike_string *a = NULL;       if (arguments && (d->args > 0)) {    a = ITEM(arguments)[0].u.string;    }    d->magic(context_obj, d, a, &s);    -  /* NB: The variable 'a' does not hold any refs. */ -  -  if (d->magic == insert_callback_define || -  d->magic == insert_callback_define_no_args || -  d->magic == insert_pragma) { -  goto keep_new_lines; +  goto done;    } -  goto remove_new_lines; -  } +        if (arguments2 && (d->flags & CPP_MACRO_VARARGS) &&    (arguments2->size > d->args)) {    /* Join all the varargs with commas. */    push_array(slice_array(arguments2, 0, d->args-1));    push_array(slice_array(arguments2, d->args-1, arguments2->size));    push_text(",");    o_multiply();    f_aggregate(1);    f_add(2);
pike.git/src/cpp.cmod:344:    get_name_of_type(TYPEOF(Pike_sp[-1])));    pop_stack();    break;    }    string_builder_shared_strcat(&s, Pike_sp[-1].u.string);    pop_stack();    break;    }    }    -  if (d->flags & CPP_MACRO_KEEP_NL) goto keep_new_lines; -  -  remove_new_lines: +  done: +  if (!(d->flags & CPP_MACRO_KEEP_NL)) {    /* Remove any newlines from the completed expression. */    for(i=0; i< (ptrdiff_t)s.s->len; i++)    if(index_shared_string(s.s, i) == '\n')    SET_INDEX_CHARP(s.s->str, i, s.s->size_shift, ' '); -  +  }    -  keep_new_lines: +     pop_n_elems(args);    push_string(finish_string_builder(&s));    }   }   /*! @endclass define    */      PIKEFUN string evaluate_define(string def, string arguments)   {    APPLY_MASTER("evaluate_define", args);