Case(ipr::Rname, level, position) { if (level < template_parameters_stack.size() && position < template_parameters_stack[level]->size()) return eval_name(template_parameters_stack[level]->operator[](position).name()); else return "BUGGY_IPR_RNAME_" + to_str(level) + '_' + to_str(position); }
// ----------------------------------------------------------------------- struct node_t * eval_exlname(struct node_t *n) { struct node_t *nn; struct var_t *ev = get_pvar(extracodes, n->str); if (ev) { // this is extracode name nn = mknod_valstr(N_VAL, ev->value, NULL); if (!nn) { ass_error(n->lineno, "Memory allocation error"); } else { DEBUG("eval_exlname() got exl: %s = %i\n", n->str, nn->value); } } else { // variable or label nn = eval_name(n); } return nn; }