The problem, as I understand it, is that you end up with two names for the 
same underlying type, but you can't convert between them without a cast.

Which sort of defeats the reason for these "shortcut names".

--Josh

At 22:47 on 02/23/2002 EST, Dan Sugalski <[EMAIL PROTECTED]> wrote:

> At 10:43 PM -0500 2/23/02, Josh Wilmes wrote:
> >So indent needs to be told about non-standard type (typedefs) to work best.
> >The problem is that some of the parrot code does this:
> >
> >#define CHARTYPE struct parrot_chartype_t
> >#define ENCODING struct parrot_encoding_t
> >#define STRING struct parrot_string_t
> >#define Parrot_CharType struct parrot_chartype_t *
> >#define Parrot_Encoding struct parrot_encoding_t *
> >#define Parrot_String struct parrot_string_t *
> >
> >I think the first three are intended to give shorter names for use inside
> >the core.  I'm not sure about the seocnd three, but I think they can
> >probably be converted to typedefs safely enough.
> >
> >So, what should be done about the first three?  If it's cool to have
> >shortcut names for types like that, may I propose that we make a header file
> >which is for use in-core only and does all those aliases in one place.  Then
> >I can parse that for indent's purposes.
> 
> We should make the first three typedefs. (Well, OK, we should make 
> them all typedefs) I thought they were already, which'd explain some 
> of the interesting error messages I get at times.
> -- 
>                                          Dan
> 
> --------------------------------------"it's like this"-------------------
> Dan Sugalski                          even samurai
> [EMAIL PROTECTED]                         have teddy bears and even
>                                        teddy bears get drunk


Reply via email to