GWI_BB(gwi_oper_add(gwi, at_object))
GWI_BB(gwi_oper_emi(gwi, opem_at_object))
GWI_BB(gwi_oper_end(gwi, "@=>", ObjectAssign))
+ GWI_BB(gwi_oper_ini(gwi, OP_ANY_TYPE, OP_ANY_TYPE, NULL))
+ GWI_BB(gwi_oper_add(gwi, opck_basic_cast))
+ GWI_BB(gwi_oper_end(gwi, "$", NULL))
GWI_BB(gwi_oper_ini(gwi, "Object", "Object", "int"))
GWI_BB(gwi_oper_end(gwi, "==", EqObject))
GWI_BB(gwi_oper_end(gwi, "!=", NeqObject))
OP_CHECK(opck_basic_cast) {
const Exp_Cast* cast = (Exp_Cast*)data;
- return exp_self(cast)->type;
+ return isa(cast->exp->type, exp_self(cast)->type) > 0 ?
+ exp_self(cast)->type : t_null;
}
OP_EMIT(opem_basic_cast) {