Fix KT-78532 Appendable/StringBuilder objcExportErrorOnNameCollisions errors #5583
+275
−2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
KT-78532
Introduce
@ObjCExportIgnoreNameCollisionannotation to suppress name collision errors when generating Objective-C headers with-Xbinary=objcExportErrorOnNameCollisions=truecompiler option.AppendableandStringBuilderhave multiple overloaded methods with different parameter types (append(Int), append(String), etc.) that cause mandatory name mangling in ObjC. This prevents users from enabling strict collision checking even when these types only appear in their API signatures without being used from ObjC.Apply the annotation to
AppendableandStringBuilderto allow these stdlib classes to work with the strict collision mode.