pike.git / src / pike_types.c

version» Context lines:

pike.git/src/pike_types.c:1:   /*   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: pike_types.c,v 1.361 2009/11/28 13:36:21 mast Exp $ + || $Id$   */      #include "global.h"   #include <ctype.h>   #include "svalue.h"   #include "pike_types.h"   #include "stralloc.h"   #include "stuff.h"   #include "array.h"   #include "program.h"
pike.git/src/pike_types.c:7711:   {    recurse:    switch(t->type) {    case T_ARRAY:    case T_MULTISET:    case T_TYPE:    case T_NOT:    case T_PROGRAM:    my_putchar(t->type);    /* FALL_THROUGH */ -  case PIKE_T_NAME: -  case PIKE_T_ATTRIBUTE: +     t = t->car;    goto recurse;       case PIKE_T_RING:    case T_TUPLE:    case T_MAPPING:    case T_OR:    case T_AND:    my_putchar(t->type);    low_type_to_string(t->car);
pike.git/src/pike_types.c:7807:    t = t->cdr;    goto recurse;       case T_SCOPE:    case T_ASSIGN:    my_putchar(t->type);    my_putchar('0' + CAR_TO_INT(t));    t = t->cdr;    goto recurse;    +  case PIKE_T_NAME: +  case PIKE_T_ATTRIBUTE: +  my_putchar(t->type); +  my_putchar(0); +  my_strcat(((struct pike_string *)t->car)->str); +  my_putchar(0); +  t = t->cdr; +  goto recurse; +     default:    Pike_error("low_type_to_string(): Unsupported node: %d\n", t->type);    break;    }   }      struct pike_string *type_to_string(struct pike_type *t)   { -  +  ONERROR err;    dynamic_buffer save_buf;    init_buf(&save_buf); -  +  SET_ONERROR(err, abandon_buf, &save_buf);    low_type_to_string(t); -  +  UNSET_ONERROR(err);    return free_buf(&save_buf);   }      #ifdef PIKE_DEBUG   static void gc_mark_external_types(struct callback *cb, void *a, void *b);   static struct callback *pike_type_gc_callback = NULL;   #endif /* PIKE_DEBUG */      void init_types(void)   {