patchGNUstep - Patches: patch #7822, [GNUstep Make] Bad code generator...

 
 

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

patch #7822: [GNUstep Make] Bad code generator in Makefiles/Instance/framework.make, causes compiler errors

Submitted by:  Stanislav Yaglo <stam>
Submitted on:  Thu 26 Jul 2012 08:17:55 PM UTC  
 
Category: NonePriority: 5 - Normal
Status: Ready For TestPrivacy: Public
Assigned to: Niels Grewe <thebeing>Open/Closed: Closed

Thu 16 Aug 2012 08:01:07 PM UTC, comment #3:

Hi Stanislav,

Thanks alot for the pointer! I've updated gnustep-base to use the attribute for its root classes (when compiling with clang, that is).

Cheers,

Niels

Niels Grewe <thebeing>
Project MemberIn charge of this item.
Wed 15 Aug 2012 06:52:01 PM UTC, comment #2:

It seems that the new clang considers definition of a new root class an advanced feature by default, since base classes now should have _attribute_((objc_root_class)) before @interface.

See: https://github.com/chapuni/clang/commit/b2f6820773aabff3c5c9e0dbb1cbbbda0d80c41f (http://llvm.org/viewvc/llvm-project?view=rev&revision=154187)

And somehow the objc-root-class warning option gets turned on.

Stanislav Yaglo <stam>
Wed 15 Aug 2012 02:46:47 PM UTC, comment #1:

Please note that clang doesn't strictly emit an error here, but a warning which is then escalated using -Werror, so gnustep-make is not generating invalid code here (there are perfectly sensible reasons for implementing root classes, after all). But there seems to be no valid reason why the framework dummy-classes should be root-classes, so I went ahead applied your patch.

Niels Grewe <thebeing>
Project MemberIn charge of this item.
Thu 26 Jul 2012 08:17:55 PM UTC, original submission:

Hi, when building an Etoile framework I stumbled upon a compiler error with the new clang (version 3.2 (trunk 160797)). It doesn't like @interface without a base class.

The patch fixes the issue.

Errors look like this:

derived_src/NSFramework_LanguageKit.m:2:12: error: class 'NSFramework_LanguageKit' defined without specifying a base class
[-Werror,-Wobjc-root-class]
@interface NSFramework_LanguageKit
^
derived_src/NSFramework_LanguageKit.m:2:35: note: add a super class to fix this problem
@interface NSFramework_LanguageKit
^
: NSObject
1 error generated.

Stanislav Yaglo <stam>

 

Attached Files
file #26266:  framework.make.patch added by stam (569B - application/octet-stream - Patch for framework.make)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by FredKiefer (Updated the item)
  • -unavailable- added by thebeing (Posted a comment)
  • -unavailable- added by stam (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 4 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Fri 20 Dec 2013 03:17:48 PM UTCFredKieferAssigned toNone=>thebeing
      Open/ClosedOpen=>Closed
    Wed 15 Aug 2012 02:46:47 PM UTCthebeingStatusNone=>Ready For Test
    Thu 26 Jul 2012 08:17:55 PM UTCstamAttached File-=>Added framework.make.patch, #26266

    Back to the top


    Powered by Savane 3.1-cleanup