keith@EXPO.LCS.MIT.EDU (Keith Packard) (03/24/89)
Pcc allows:
typedef long fd_mask;
typedef long fd_mask;
but only with the primary type 'long'. Gcc should probably allow
this as well with the -traditional option. The trivial fix is
to allow arbitrary redefinition of typedefs, at least the old program
will still compile:
static char *
redeclaration_error_message (new, old)
tree new, old;
{
if (TREE_CODE (new) == TYPE_DECL)
{
if (flag_traditional)
return 0;
return "redefinition of `%s'";
}
else if (TREE_CODE (new) == FUNCTION_DECL)
The better fix might be to discover exactly which types are allowed
in this situation.
keith packard
keith@expo.lcs.mit.edu