I fixed these places. Bugs like this could easily be avoided by using branches and pull requests and having the travis CI test the build on different environments. But this did not happen. Looks like somebody wants to stop compilation of GNUstep with gcc.
Fred > Am 14.11.2019 um 21:55 schrieb Riccardo Mottola <[email protected]>: > > Hi, > > our base is not compiling on Debian with current gcc 9.2. > > The latter errors are certainly for Blocks being used enyway, but the first > error about NSSet confuses me. > I fixed NSError not being found because a missing header, but that is not > enough. > > > Making all for library libgnustep-base... > Compiling file NSXPCConnection.m ... > In file included from NSXPCConnection.m:25: > ../Headers/Foundation/NSXPCConnection.h:36:62: error: expected ‘;’ before ‘<’ > token > 36 | @class NSMutableDictionary, NSString, NSOperationQueue, > NSSet<ObjectType>, NSLock, NSError; > | ^ > | ; > In file included from ../Headers/Foundation/NSObjCRuntime.h:41, > from ../Headers/Foundation/NSObject.h:30, > from ../Headers/Foundation/NSXPCConnection.h:28, > from NSXPCConnection.m:25: > ../Headers/Foundation/NSXPCConnection.h:40:49: error: unknown type name > ‘NSError’ > 40 | DEFINE_BLOCK_TYPE(GSXPCProxyErrorHandler, void, NSError *); > | ^~~~~~~ > ../Headers/GNUstepBase/GSBlocks.h:68:28: note: in definition of macro > ‘DEFINE_BLOCK_TYPE’ > 68 | retTy (*invoke)(void*, argTys, ## __VA_ARGS__);\ > | ^~~~~~ > ../Headers/GNUstepBase/GSBlocks.h:69:3: warning: no semicolon at end of > struct or union > 69 | } *name > | ^ > ../Headers/Foundation/NSXPCConnection.h:40:1: note: in expansion of macro > ‘DEFINE_BLOCK_TYPE’ > 40 | DEFINE_BLOCK_TYPE(GSXPCProxyErrorHandler, void, NSError *); > | ^~~~~~~~~~~~~~~~~ > ../Headers/Foundation/NSXPCConnection.h:41:51: error: ‘void’ must be the only > parameter > 41 | DEFINE_BLOCK_TYPE(GSXPCInterruptionHandler, void, void); > | ^~~~ > ../Headers/GNUstepBase/GSBlocks.h:68:28: note: in definition of macro > ‘DEFINE_BLOCK_TYPE’ > 68 | retTy (*invoke)(void*, argTys, ## __VA_ARGS__);\ > | ^~~~~~ > ../Headers/Foundation/NSXPCConnection.h:42:51: error: ‘void’ must be the only > parameter > 42 | DEFINE_BLOCK_TYPE(GSXPCInvalidationHandler, void, void); > | ^~~~ > ../Headers/GNUstepBase/GSBlocks.h:68:28: note: in definition of macro > ‘DEFINE_BLOCK_TYPE’ > 68 | retTy (*invoke)(void*, argTys, ## __VA_ARGS__);\ > | ^~~~~~ > In file included from NSXPCConnection.m:25: > ../Headers/Foundation/NSXPCConnection.h:85:49: error: expected ‘)’ before ‘^’ > token > 85 | - (id) remoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler; > | ^ > | ) > ../Headers/Foundation/NSXPCConnection.h:85:51: error: expected ‘)’ before ‘(’ > token > 85 | - (id) remoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler; > | ^ > | ) > ../Headers/Foundation/NSXPCConnection.h:87:60: error: expected ‘)’ before ‘^’ > token > 87 | - (id) synchronousRemoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler; > | ^ > | ) > ../Headers/Foundation/NSXPCConnection.h:87:62: error: expected ‘)’ before ‘(’ > token > 87 | - (id) synchronousRemoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler; > | ^ > | ) > NSXPCConnection.m:90:49: error: expected ‘)’ before ‘^’ token > 90 | - (id) remoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler > | ^ > | ) > NSXPCConnection.m:90:51: error: expected ‘)’ before ‘(’ token > 90 | - (id) remoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler > | ^ > | ) > NSXPCConnection.m:95:60: error: expected ‘)’ before ‘^’ token > 95 | - (id) synchronousRemoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler > | ^ > | ) > NSXPCConnection.m:95:62: error: expected ‘)’ before ‘(’ token > 95 | - (id) synchronousRemoteObjectProxyWithErrorHandler:(void (^)(NSError > *error))handler > | ^ > | ) > make[4]: *** [/System/Library/Makefiles/rules.make:479: > obj/libgnustep-base.obj/NSXPCConnection.m.o] Error 1 > >
