------- Comment #5 from iains at gcc dot gnu dot org  2010-05-24 19:22 -------
this has nothing to do with tls it is a general issue with ObjC/lto..  : 
the following code (OK w.out,   error with -flto)
=======

cat trivial.m:

extern int printf (char *,...) ;

typedef struct objc_class *Class;

struct objc_class {
    Class isa;
    /* other stuff... */
}  ;

@interface Object {
@public
     Class isa;
}
+initialize;
+(Class)class;

@end

@implementation Object
+initialize {
     return self;
}

+(Class)class {
     return (Class)self;
}

@end

int main(void)
{
  [Object class];
  printf("trivial OK\n");
  return 0;
}

===

will take a look at it as soon as poss.


-- 


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

Reply via email to