pike.git/
src/
pike_types.cmod
Branch:
Tag:
Non-build tags
All tags
No tags
2021-11-21
2021-11-21 14:52:21 by Henrik Grubbström (Grubba) <grubba@grubba.org>
fe434cc15d94eeb788435b52630eb90418dc419f (
8
lines) (+
4
/-
4
)
[
Show
|
Annotate
]
Branch:
master
Compiler
[Typechecker]
: Fix some issues with __unknown__.
5588:
case T_MAPPING: case T_STRING: /* FIXME: Handle PT_FLAG_CMP_INSEPARABLE. */
+
/* FIXME: The recursive op should probably be inverted. */
tmp = low_type_binop(op, a->car, b->car, remap, 0, 0, remap_flags);
-
if (!tmp && (op == PT_BINOP_AND)) return NULL;
+
if (!tmp && (op == PT_BINOP_AND)
&& a->car && b->car
) return NULL;
if (a->type == T_STRING) { tmp2 = low_type_binop(op, a->cdr, b->cdr, remap, 0, 0, remap_flags);
5603:
PT_FLAG_CMP_NULLABLE, remap_flags); }
-
if (!tmp2 &&
-
(
a->type != PIKE_T_STRING
-
||
op == PT_BINOP_MINUS || (a->cdr && b->cdr))) {
+
if (!tmp2 && (op == PT_BINOP_MINUS || (a->cdr && b->cdr))) {
if (op == PT_BINOP_AND) { free_type(tmp); return NULL;