testsuite, Objective-C : Add initialize method to root class.
authorIain Sandoe <iain@sandoe.co.uk>
Mon, 5 Oct 2020 10:38:12 +0000 (11:38 +0100)
committerIain Sandoe <iain@sandoe.co.uk>
Sun, 11 Oct 2020 14:18:02 +0000 (15:18 +0100)
Older versions of the runtime don't like it when the root class
has a missing initialize method.  They try to forward to an non-
existent super class resulting in a crash.

TODO: maybe we can diagnose this.

gcc/testsuite/ChangeLog:

* objc.dg/ivar-scope-4.m: Add inititialize method to the
root class.

gcc/testsuite/objc.dg/ivar-scope-4.m

index f7209724be998c12d5a3fd21aeade16b65c096cd..5fc29f90bdcb8e258f0c37d3f4c8a08439237166 100644 (file)
@@ -18,6 +18,7 @@ int someivar = 1;
   int someivar;
 }
 
++ (id) initialize;
 + (id) alloc;
 - (id) init;
 - (int) getGlobal;
@@ -26,6 +27,11 @@ int someivar = 1;
 @end
 
 @implementation MyClass
++ (id) initialize
+{
+  return self;
+}
+
 + (id) alloc
 {
   return class_createInstance (self, 0);