[Objc] Replace reference to message's own class when calling the GPBDescriptor initializer, using a direct linker reference instead of +class.

The linker reference results in slightly smaller binaries when compared to calling +class.

PiperOrigin-RevId: 506678094
diff --git a/objectivec/GPBStruct.pbobjc.m b/objectivec/GPBStruct.pbobjc.m
index 5922057..4f6ca45 100644
--- a/objectivec/GPBStruct.pbobjc.m
+++ b/objectivec/GPBStruct.pbobjc.m
@@ -110,7 +110,7 @@
       },
     };
     GPBDescriptor *localDescriptor =
-        [GPBDescriptor allocDescriptorForClass:[GPBStruct class]
+        [GPBDescriptor allocDescriptorForClass:GPBObjCClass(GPBStruct)
                                           file:GPBStructRoot_FileDescriptor()
                                         fields:fields
                                     fieldCount:(uint32_t)(sizeof(fields) / sizeof(GPBMessageFieldDescription))
@@ -210,7 +210,7 @@
       },
     };
     GPBDescriptor *localDescriptor =
-        [GPBDescriptor allocDescriptorForClass:[GPBValue class]
+        [GPBDescriptor allocDescriptorForClass:GPBObjCClass(GPBValue)
                                           file:GPBStructRoot_FileDescriptor()
                                         fields:fields
                                     fieldCount:(uint32_t)(sizeof(fields) / sizeof(GPBMessageFieldDescription))
@@ -278,7 +278,7 @@
       },
     };
     GPBDescriptor *localDescriptor =
-        [GPBDescriptor allocDescriptorForClass:[GPBListValue class]
+        [GPBDescriptor allocDescriptorForClass:GPBObjCClass(GPBListValue)
                                           file:GPBStructRoot_FileDescriptor()
                                         fields:fields
                                     fieldCount:(uint32_t)(sizeof(fields) / sizeof(GPBMessageFieldDescription))