DCL_TYPE (val->type) = CPOINTER;
DCL_PTR_CONST (val->type) = port->mem.code_ro;
}
+ else if (SPEC_SCLS (expr->left->etype) == S_PDATA)
+ DCL_TYPE (val->type) = PPOINTER;
else if (SPEC_SCLS (expr->left->etype) == S_XDATA)
DCL_TYPE (val->type) = FPOINTER;
else if (SPEC_SCLS (expr->left->etype) == S_XSTACK)
DCL_TYPE (val->type) = CPOINTER;
DCL_PTR_CONST (val->type) = port->mem.code_ro;
}
+ else if (SPEC_SCLS (expr->right->etype) == S_PDATA)
+ DCL_TYPE (val->type) = PPOINTER;
else if (SPEC_SCLS (expr->right->etype) == S_XDATA)
DCL_TYPE (val->type) = FPOINTER;
else if (SPEC_SCLS (expr->right->etype) == S_XSTACK)
{
if (!size)
{
- werror (E_INTERNAL_ERROR, __FILE__, __LINE__,
- "size should never be 0");
-
/* we have not been given a size, but now we know it */
size = strlen (SPEC_CVAL (val->etype).v_char) + 1;
/* but first check, if it's a flexible array */