pike.git / src / pike_types.cmod

version» Context lines:

pike.git/src/pike_types.cmod:2790:    (struct pike_string *)t->car);    string_builder_sprintf(s, "__attribute__(%O, %T)", &sval, t->cdr);    }    }    break;       case T_FUNCTION:    case T_MANY:    {    if(t->type == T_MANY && -  t->cdr->type == T_OR && +  ((!t->cdr && !t->car) || +  (t->cdr && t->cdr->type == T_OR &&    ((t->cdr->car->type == T_MIXED && t->cdr->cdr->type == T_VOID) ||    (t->cdr->cdr->type == T_MIXED && t->cdr->car->type == T_VOID)) &&    (!t->car ||    t->car->type == T_ZERO ||    (t->car->type == T_OR &&    ((t->car->car->type == T_ZERO && t->car->cdr->type == T_VOID) || -  (t->car->cdr->type == T_ZERO && t->car->car->type == T_VOID))))) +  (t->car->cdr->type == T_ZERO && t->car->car->type == T_VOID)))))))    {    /* function == function(zero...:mixed|void) or    * function(zero|void...:mixed|void)    */    string_builder_strcat(s, "function");    /* done */    break;    } else {    int arg = 0;    string_builder_strcat(s, "function(");