@@ -616,11 +616,11 @@ + (void)initialize { if (self != [OFString class]) return; - placeholder.isa = [OFStringPlaceholder class]; + object_setClass((id)&placeholder, [OFStringPlaceholder class]); #if defined(HAVE_STRTOF_L) || defined(HAVE_STRTOD_L) || defined(HAVE_USELOCALE) if ((cLocale = newlocale(LC_ALL_MASK, "C", NULL)) == NULL) @throw [OFInitializationFailedException exceptionWithClass: self]; @@ -801,11 +801,12 @@ encoding: encoding] autorelease]; } - (instancetype)init { - if ([self isMemberOfClass: [OFString class]]) { + if ([self isMemberOfClass: [OFString class]] || + [self isMemberOfClass: [OFMutableString class]]) { @try { [self doesNotRecognizeSelector: _cmd]; } @catch (id e) { [self release]; @throw e;