@@ -384,6 +384,9 @@ - (id) initWithName: (NSString*)name data: (NSData*)data
384384 {
385385 zone = RETAIN (localTimeZone);
386386 DESTROY (self);
387+ /* The following strance cast, where we should be returning (id),
388+ * is to work around a bug/feature in at least one version of clang.
389+ */
387390 return (GSPlaceholderTimeZone*)zone;
388391 }
389392
@@ -510,6 +513,9 @@ - (id) initWithName: (NSString*)name data: (NSData*)data
510513 {
511514 zone = [[GSWindowsTimeZone alloc ] initWithName: name data: 0 ];
512515 DESTROY (self);
516+ /* The following strance cast, where we should be returning (id),
517+ * is to work around a bug/feature in at least one version of clang.
518+ */
513519 return (GSPlaceholderTimeZone*)zone;
514520 }
515521#else
@@ -527,6 +533,9 @@ - (id) initWithName: (NSString*)name data: (NSData*)data
527533 }
528534 }
529535 DESTROY (self);
536+ /* The following strance cast, where we should be returning (id),
537+ * is to work around a bug/feature in at least one version of clang.
538+ */
530539 return (GSPlaceholderTimeZone*)zone;
531540}
532541
@@ -1487,7 +1496,7 @@ + (NSTimeZone*) systemTimeZone
14871496 tzName = tz.StandardName ;
14881497#endif
14891498
1490- localZoneSource = @" function: 'GetTimeZoneInformation ()'" ;
1499+ localZoneSource = @" function: 'GetDynamicTimeZoneInformation ()'" ;
14911500
14921501#if defined(_MSC_VER) && defined(UCAL_H)
14931502 // Convert Windows timezone name to IANA identifier
0 commit comments