git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@1241
4a8a32a2-be11-0410-ad9d-
d568d2c75423
+2001-09-08 <johan@FRIJA>
+
+ * src/SDCCicode.c (geniCodeCall): a CPOINTER can be used as a function
+
2001-09-07 <johan@FRIJA>
* src/SDCCicode.c (newiCodeCondition): fixed bug #456235 (1.77)
sym_link *type, *etype;
int stack = 0;
- if (!IS_FUNC(OP_SYMBOL(left)->type)) {
+ if (!IS_FUNC(OP_SYMBOL(left)->type) &&
+ !IS_CODEPTR(OP_SYMBOL(left)->type)) {
werror (E_FUNCTION_EXPECTED);
return NULL;
}
DCL_TYPE(x) == UPOINTER ))
#define IS_PTR_CONST(x) (IS_PTR(x) && DCL_PTR_CONST(x))
#define IS_FARPTR(x) (IS_DECL(x) && DCL_TYPE(x) == FPOINTER)
+#define IS_CODEPTR(x) (IS_DECL(x) && DCL_TYPE(x) == CPOINTER)
#define IS_GENPTR(x) (IS_DECL(x) && DCL_TYPE(x) == GPOINTER)
#define IS_FUNC(x) (IS_DECL(x) && DCL_TYPE(x) == FUNCTION)
#define IS_LONG(x) (IS_SPEC(x) && x->select.s._long)