patchGNUstep - Patches: patch #4206, libobjc: Extend protocol hack to...

Group
 
 

You are not allowed to post comments on this tracker with your current authentication level.

patch #4206: libobjc: Extend protocol hack to all gcc versions

Submitter:  Jeremy Bettis <jeremybettis>
Submitted:  Fri 22 Jul 2005 06:32:52 PM UTC
   
 
Category:  DevLibs Priority:  5 - Normal
Status:  Done Privacy:  Public
Assigned to:  fedor Open/Closed:  Closed

Fri 12 Aug 2005 08:17:55 PM UTC, comment #4: 

OK. Applied. Thanks.

Adam Fedor <fedor>
Group administrator
Fri 12 Aug 2005 07:39:09 PM UTC, comment #3: 

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18255

There is a patch and a testcase for gcc.

Jeremy Bettis <jeremybettis>
Fri 12 Aug 2005 05:43:38 PM UTC, comment #2: 

You wouldn't happen to have a test case for this?  I can try to submit it to gcc as well, then.

Adam Fedor <fedor>
Group administrator
Tue 26 Jul 2005 04:54:42 PM UTC, comment #1: 

HA! I found the real problem, and have undid this icky hack.

It was a complex situation.  You had to have 2 protocols, where the first one was used by a class, and the second was not.  Also you had to have a Category which implemented a protocol which inherited from a protocol not used by any class, and the protocol had to not be the first one in the module symbol table.

whew.

In any case, this new patch deals with this.

2 changes,
1) we need to initalize all statics, even if the first one is initalized.
2) we need to call __objc_init_protocols on the super-protocols even if the protocol itself is initialized.

Jeremy Bettis <jeremybettis>
Fri 22 Jul 2005 06:32:52 PM UTC, original submission:  

I reported a problem with Protocols not getting initialized in GCC 3.2 a while back, and now that GCC 3.3 and 3.4 have been tested, they also have problems with Protocols.  Not as often, but it still happens.

So this patch does two things.

It removes the #ifdef gcc < 3.3, and added a warning message if compiled with warn=yes.

Jeremy Bettis <jeremybettis>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #9122:  libobjc-diff2.txt added by jeremybettis (2KiB - text/plain)
file #9131:  libobjc-diff.txt added by jeremybettis (1KiB - text/plain - patch to libobjc CVS)

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

 

Follow 5 latest changes.

Date Changed by Updated Field Previous Value => Replaced by
2005-08-12 fedor StatusNone Done
    Open/ClosedOpen Closed
2005-08-12 fedor Assigned toNone fedor
2005-07-26 jeremybettis Attached File- Added libobjc-diff2.txt, #4921
2005-07-22 jeremybettis Attached File- Added libobjc-diff.txt, #4883

Back to the top

Powered by Savane 3.13-758e.
Corresponding source code