[cfe-commits] [PATCH][MS][Review request] - Microsoft Attributes parsing support

Sebastian Redl sebastian.redl at getdesigned.at
Sat Oct 9 01:39:04 PDT 2010


On 08.10.2010, at 18:31, Francois Pichet wrote:

> First: Microsoft attributes are not C+0X attributes.
> 
> This patch is very important to parse MSVC headers
> Up to now i had used the flag -D_USE_ATTRIBUTES_FOR_SAL to disable
> attributes while parsing MSVC headers with clang.
> Now I removed that option and this is the patch needed to remove 1000+ errors.
> 
> Microsoft attributes exist in C and C++.
> MS attributes are used for COM programming and also to give
> information to the MSVC code analyzer.
> This patch just add parsing support for attributes, the attributes are
> basically skipped. That's sufficient for now I think. We gonna walk
> before we run.
> 
> example :
> 
> [returnvalue:SA_Post(MustCheck=SA_Yes)] int __cdecl
> _isctype([SA_Pre(Null=SA_No)]
> [SA_Pre(Deref=1,Valid=SA_Yes,Access=SA_Read)] int _C,
> [SA_Pre(Null=SA_No)] [SA_Pre(Deref=1,Valid=SA_Yes,Access=SA_Read)] int
> _Type);

What happens if someone enables Microsoft extensions in Objective-C mode? Those attributes could be easily confused with a message send.

Sebastian



More information about the cfe-commits mailing list