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
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to