Le 30 juin 2011 à 13:48, David Chisnall a écrit : > On 30 Jun 2011, at 12:34, Quentin Mathé wrote: > >> This commit causes various compilation errors here. I'm using Clang trunk >> from a week ago and libobjc 2 1.4. >> btw are qualifiers such as __unsafe_unretained going to be skipped by >> compilers that don't know them (e.g. Clang 2.9 or GCC 4.6)? > > I added a header in GNUstep that defines these when not compiling in ARC > mode. If we want EF to work with older versions of Foundation, then just > copy the section from GNUstepBase/preface.h into EF somewhere.
ok, I just have done that. I copied the ARC macros to EtoileCompatibility.h and EtoileFoundation now builds correctly. It's possible that the compiler complains about already defined macros if preface.h gets imported before EtoileCompatibility.h though… May be you will observe that with your GNUstep trunk version. Can you tweak it if that's the case? I didn't copy the whole preface.h because it defines GNUstep Foundation versions which are generated from preface.h.in. Also there is something that puzzles me. EtoileThread builds just fine when I invoke make in the parent directory (EF main directory), but reports various errors 'ivars may not be placed in class extension' for ETObjectPipe, when 'make' is invoked directly in the EtoileThread directory. I'm not even sure to understand the purpose behind this Clang message… Is it expected to report identically named ivars declared in superclasses or in @interface? Could this be a bug in Clang? Cheers, Quentin. _______________________________________________ Etoile-dev mailing list [email protected] https://mail.gna.org/listinfo/etoile-dev
