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

Reply via email to