Hi David, Le 30 juin 2011 à 00:25, David Chisnall a écrit :
> Author: theraven > Date: Thu Jun 30 00:25:46 2011 > New Revision: 7038 > > URL: http://svn.gna.org/viewcvs/etoile?rev=7038&view=rev > Log: > Make EtoileFoundation able to be compiled in ARC mode (if you run the > rewriter, which I haven't done). > > Removed two files from the build: > > NSObject+Prototypes.m: This reimplements a load of stuff that the runtime > implements. It's ugly. We should move 90% of it into the runtime. > > ETThread.m: As far as I can tell, this is a partial reimplementation of > NSThread, with a different name. No idea why I wrote it - I can only assume > I was drunk at the time. 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)? With make in EtoileFoundation: Compiling file Source/ETByteSizeFormatter.m ... In file included from Source/ETByteSizeFormatter.m:10: /home/qmathe/reps/trunkEtoile/Frameworks/EtoileFoundation/Headers/Macros.h:65:5: error: use of undeclared identifier '__unsafe_unretained' [*(__unsafe_unretained id*)object unlock]; ^ With make in EtoileThread: In file included from ETObjectPipe.m:1: /home/qmathe/reps/trunkEtoile/Frameworks/EtoileFoundation/EtoileThread/../Headers/Macros.h:65:5: error: use of undeclared identifier '__unsafe_unretained' [*(__unsafe_unretained id*)object unlock]; ^ ETObjectPipe.m:132:5: error: ivars may not be placed in class extension id queue[RING_BUFFER_SIZE]; ^ ETObjectPipe.m:134:11: error: ivars may not be placed in class extension uint32_t requestProducer; ^ ETObjectPipe.m:136:11: error: ivars may not be placed in class extension uint32_t requestConsumer; ^ ETObjectPipe.m:138:11: error: ivars may not be placed in class extension uint32_t replyProducer; ^ ETObjectPipe.m:140:11: error: ivars may not be placed in class extension uint32_t replyConsumer; ^ ETObjectPipe.m:145:15: error: ivars may not be placed in class extension NSCondition *requestCondition; ^ ETObjectPipe.m:150:15: error: ivars may not be placed in class extension NSCondition *replyCondition; ^ ETObjectPipe.m:152:16: error: ivars may not be placed in class extension volatile BOOL disconnect; ^ ETObjectPipe.m:160:2: error: use of undeclared identifier 'requestCondition' requestCondition = [NSCondition new]; ^ ETObjectPipe.m:161:2: error: use of undeclared identifier 'replyCondition' replyCondition = [NSCondition new]; ^ ETObjectPipe.m:162:14: error: use of undeclared identifier 'queue' if (NULL == queue || nil == replyCondition || nil == requestCondition) ^ ETObjectPipe.m:162:30: error: use of undeclared identifier 'replyCondition' if (NULL == queue || nil == replyCondition || nil == requestCondition) ^ ETObjectPipe.m:162:55: error: use of undeclared identifier 'requestCondition' if (NULL == queue || nil == replyCondition || nil == requestCondition) ^ ETObjectPipe.m:173:4: error: use of undeclared identifier 'queue' [queue[i] release]; ^ ETObjectPipe.m:175:3: error: use of undeclared identifier 'requestCondition' [requestCondition release]; ^ ETObjectPipe.m:176:3: error: use of undeclared identifier 'replyCondition' [replyCondition release]; ^ ETObjectPipe.m:181:6: error: use of undeclared identifier 'disconnect' if (disconnect) { return; } ^ ETObjectPipe.m:182:2: error: use of undeclared identifier 'requestProducer' INSERT(anObject, request); ^ ETObjectPipe.m:79:9: note: instantiated from: while (ISFULL(direction ## Producer, direction ## Consumer))\ ^ ETObjectPipe.m:45:37: note: instantiated from: #define ISFULL(producer, consumer) (SPACE(producer, consumer) == 0) ^ ETObjectPipe.m:182:2: note: instantiated from: INSERT(anObject, request); ^ ETObjectPipe.m:79:9: note: instantiated from: while (ISFULL(direction ## Producer, direction ## Consumer))\ ^ ETObjectPipe.m:182:2: note: instantiated from: INSERT(anObject, request); ^ <scratch space>:7:1: note: instantiated from: requestProducer ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] Cheers, Quentin. _______________________________________________ Etoile-dev mailing list Etoile-dev@gna.org https://mail.gna.org/listinfo/etoile-dev