Re: [xslt] libxslt 1.0.33 + libxml2 2.6.0 'IS_BLANK' problem



> Hiya,
>
> I'm building libxslt 1.0.33 against libxml2 2.6.0. I get a fatal error
from
> the compiler whilst compiling libxslt/xslt.c :
>
> "c.xslt", line 66: Error: differing redefinition of #define macro IS_BLANK
>
> xslt.c has the macro declared :
>
> #define IS_BLANK(c) (((c) == 0x20) || ((c) == 0x09) || ((c) == 0xA) || \
>                      ((c) == 0x0D))
>
> However, xslt.c also includes libxml/parserInternals.h which has the
> definition :
>
> #define IS_BLANK(c)  xmlIsBlankQ(c)
>
>
> I'm not sure what the behaviour of GCC is on such redefinitions, but the
> Norcroft compiler (which is used for my RISC OS builds) treats a differing
> redefinition as a fatal error. Such use must be #undef'd before the new
> definition can be used.
>
> Is this actually a mistake that I've made, or is this redefinition not a
> problem for GCC ?

Probably not. I know that MS compiler issues a warning on that one and
continues.

However, perhaps this should be handled. Either xmlsec or xsldbg has the
same somewhere in the code, I cannot remember which it was.

I suggest that IS_BLANK from libxml be used everywhere. If there are no
objections, I'll commit what I can.

Ciao,
Igor




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]