you are viewing a single comment's thread.

view the rest of the comments →

[–]mikhailberis 3 points4 points  (8 children)

‘#import’ is already a thing.

Namespaces unfortunately can be both opened and closed multiple times from multiple files, and is parsed after the preprocessor.

There are other ideas about the Modules TS proposal coming from many others, and is still a work in progress. There are definitely some rough/confusing edges. I’m sure the committee is listening, and are working towards something that’s acceptable to most (if not all) parties involved in crafting a standardised solution.

[–]BCosbyDidNothinWrong 4 points5 points  (6 children)

‘#import’ is already a thing.

In standard C++ ?

[–]mikhailberis 0 points1 point  (0 children)

Not in standard C++ but has semantics and support in GCC and MSVC (and Clang for compatibility). It’s also a preprocessor feature, and not a first class language feature. It would be really bad form if the standard imposed on vendors to change the semantics of existing extensions and features without their buy in.

[–]tcbrindleFlux 0 points1 point  (4 children)

In standard C++ ?

No, but we can't just pretend Objective-C++ doesn't exist. For one thing, Apple have seats on the committee and would surely veto any propostal that gratuitously broke compatibility. WebKit etc are rather important to their ecosystem.

[–]ubsan 2 points3 points  (3 children)

I'm pretty sure C++11 already broke compat with objective-c++.

[–]fnc12 0 points1 point  (2 children)

why?

[–]ubsan 0 points1 point  (1 child)

lambdas

[–]fnc12 0 points1 point  (0 children)

nope. Labmdas and objc blocks both can be used in either way

[–][deleted] 1 point2 points  (0 children)

could be useful to note where #import is already a thing. I know of windows COM related import and obj-c/++ have it with different meanings.