pike.git/
src/
program.c
Branch:
Tag:
Non-build tags
All tags
No tags
2008-02-03
2008-02-03 19:38:18 by Henrik Grubbström (Grubba) <grubba@grubba.org>
8e488cfbf954b355976c3e51d4a386894618b908 (
8
lines) (+
5
/-
3
)
[
Show
|
Annotate
]
Branch:
7.9
More relaxations...
Rev: src/program.c:1.648
2:
|| 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: program.c,v 1.
647
2008/02/03
18
:
08
:
51
grubba Exp $
+
|| $Id: program.c,v 1.
648
2008/02/03
19
:
38
:
18
grubba Exp $
*/ #include "global.h"
2047:
struct identifier *new_id; /* Variable or constant. *
-
* Note: Use weaker check for integers.
+
* Note: Use weaker check for integers
(especially for constants)
.
*/ if (!pike_types_le(sub_id->type, (new_id = ID_FROM_PTR(Pike_compiler->new_program, new_ref))->type) && !((i->run_time_type == PIKE_T_INT) && (new_id->run_time_type == PIKE_T_INT) &&
-
match_types(sub_id->type, new_id->type))) {
+
(IDENTIFIER_IS_CONSTANT(sub_id->identifier_flags) ||
+
match_types(sub_id->type, new_id->type)))
)
{
yywarning("Type mismatch when overloading %S.", name); yyexplain_nonmatching_types(sub_id->type, new_id->type, YYTE_IS_WARNING);