(In case anyone was interested...)

> Ian Wrote,

> > Anybody (Albrecht?) using a "recent" mingw with fltk?
> >
> > I am not (I still use some antique mingw...) but one of the 
> guys here
> > has been, and he's encountering some weird errors.
> >
> > In particular, he has some code that uses fltk with some 
> STL stuff in it
> > (mainly <vector> I think, and some sorting stuff...) and 
> his code will
> > not compile, throwing errors in cpp_type_traits.h, at lines 
> 147 and 154
> > where there is a collision between two of the (many) 
> different templates
> > for __is_integer<thing> are defined.
> >
> > In this case, it is seeing __is_integer<bool> and 
> __is_integer<char> as
> > being The Same (it looks like it thinks bool == char at 
> this point...)

Brain replied:

> I've just been compiling the same code at home and find that 
> it compiles
> without error !!
> Now, the only difference between my installation at home, and 
> at work is the
> drive I've installed MinGW on !!
> 
> I have made loads of other changes (including compiler options too I
> suppose),
> so I guess I'll have to unbodge the cpp_type_traits.h at work 
> and try again
> tomorrow.


So, Brian and I had a look at what happened here, and the outcome is, I
think, interesting.

On the machine that fails the build, the fltk configure script had
decided that the compiler *does not* support the bool type natively, and
as a consequence had added "-Dbool=char" (and "false" and "true") to the
CXXFLAGS used (and in fltk-config too.)

Subsequently, any code built using fltk-config had this "bool=char"
substitution forced upon it, and in particular this breaks
cpp_type_traits.h.

We did a clean and re-ran configure, and all seems to be correct this
time around.

The puzzle is how the initial run of configure came up with such a wrong
answer... Very odd indeed.

However, all seems to be correct now.

But if anyone else sees this; do a make clean; delete makeinclude and
fltk-config ; re-run configure, and rebuild, then all seems to be well.

Weird though...

-- 
Ian


SELEX Galileo Ltd
Registered Office: Sigma House, Christopher Martin Road, Basildon, Essex SS14 
3EL
A company registered in England & Wales.  Company no. 02426132
********************************************************************
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
********************************************************************

_______________________________________________
fltk mailing list
fltk@easysw.com
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to