[cfe-commits] [PATCH] #import directive in MS compatibility mode
Douglas Gregor
dgregor at apple.com
Wed Mar 14 09:15:06 PDT 2012
On Mar 12, 2012, at 4:10 PM, Aaron Ballman wrote:
> MSVC uses the #import directive in a far different way than the
> language extension clang supports. Instead of including the target
> into the source, it parses a type library and generates C++ classes
> from the definitions. This difference in behavior is large enough
> that we should be warning users in MS compatibility mode so they can
> understand what's happening.
>
> This patch addresses PR 10727.
Given that the subject of an MSVC-style #import is likely to be a binary file, I think it would be better to simply warn that we are ignoring the #import directly entirely, rather than going through HandleIncludeDirective. Also, can you perhaps make
+def warn_pp_import_directive_ms : Warning<
+ "#import is a language extension that includes the contents of a header "
+ "file. It does not convert a type library to C++ classes in Microsoft Mode">,
+ InGroup<Microsoft>;
+
a bit less wordy?
- Doug
More information about the cfe-commits
mailing list