C++20 doesn't support semantic import in .mm files

Viewed 112

I've set the C++ language dialect in my xcode project to c++2a.

Than it failed on compiling .mm file which has the following line

@import AppKit;

Which has passed compilation when the compiler was set to c++17 or below.

If replace it with the following line and link with framework from project build phases, than it works.

#import <AppKit/AppKit.h>

My .mm file is include for adapter swift header file (*-Swift.h) which is auto generated and has this @import directive so I cannot avoid it using the workaround from above.

Does anybody have encountered such issue ? any thoughts how to resolve it ?

UPDATE:

Xcode 13 is about to be released with built-in support in c++20 standard, Perhaps someone had the chance to check this version and see if the problem is resolved ?

Apple Clang Compiler New Features in Xcode 13 Beta 3 You can now configure the C++20 and GNU++20 C++ language dialects in Xcode’s build settings.

1 Answers

The bug has been fixed by Apple.

Please download Xcode 13 Beta 5 or newer. That should solve the issue.

Related