Branch: Tag:

1999-12-29

1999-12-29 18:00:32 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Added Third argument to check_call().

Rev: src/builtin_functions.c:1.227
Rev: src/constants.c:1.20
Rev: src/pike_types.c:1.114
Rev: src/pike_types.h:1.36

5:   \*/   /**/   #include "global.h" - RCSID("$Id: pike_types.c,v 1.113 1999/12/26 18:53:33 grubba Exp $"); + RCSID("$Id: pike_types.c,v 1.114 1999/12/29 17:59:33 grubba Exp $");   #include <ctype.h>   #include "svalue.h"   #include "pike_types.h"
2640:    /* FIXME: function_type_string should be replaced with something    * derived from type_string    */ -  if(i!=-1 && (tmp=check_call(function_type_string, ID_FROM_INT(p, i)->type))) +  if(i!=-1 && +  (tmp=check_call(function_type_string, ID_FROM_INT(p, i)->type, +  0)))    return tmp;       reference_shared_string(mixed_type_string);
2652:    /* FIXME: function_type_string should be replaced with something    * derived from type_string    */ -  if(i!=-1 && (tmp=check_call(function_type_string, ID_FROM_INT(p, i)->type))) +  if(i!=-1 && +  (tmp=check_call(function_type_string, ID_FROM_INT(p, i)->type, +  0)))    return tmp;       reference_shared_string(mixed_type_string);
3067:   }      struct pike_string *check_call(struct pike_string *args, -  struct pike_string *type) +  struct pike_string *type, +  int strict)   {    check_type_string(args);    check_type_string(type);
3077:       if(low_get_return_type(type->str,args->str))    { -  if (lex.pragmas & ID_STRICT_TYPES) { +  if (strict) {    if (!strict_check_call(type->str, args->str)) {    struct pike_string *type_t = describe_type(type);   
3107:    INT32 ret,tmp=max_correct_args;    check_type_string(type);    clear_markers(); -  type=check_call(function_type_string, type); +  type = check_call(function_type_string, type, 0);    if(type) free_string(type);    ret=max_correct_args;    max_correct_args=tmp;