diff options
| author | Francois Pichet <pichet2000@gmail.com> | 2011-04-28 04:39:50 +0000 |
|---|---|---|
| committer | Francois Pichet <pichet2000@gmail.com> | 2011-04-28 04:39:50 +0000 |
| commit | a1c1352a36d4f2718cb6d4fbbb3d3ced0d113bb9 (patch) | |
| tree | cae3bd00b131ca6577295e367b3653a880f39861 /clang/tools/libclang/CIndex.cpp | |
| parent | 21735e608df5c0a028bc3f121e7e89113328f992 (diff) | |
| download | bcm5719-llvm-a1c1352a36d4f2718cb6d4fbbb3d3ced0d113bb9.tar.gz bcm5719-llvm-a1c1352a36d4f2718cb6d4fbbb3d3ced0d113bb9.zip | |
Support &__uuidof(type) as a non type template argument.
This idiom is used everywhere in MFC/COM code and as such this patch removes hundreds of errors when parsing MFC code with clang.
Example:
template <class T, const GUID* g = &__uuidof(T)>
class ComTemplate { };
typedef ComTemplate<struct_with_uuid, &__uuidof(struct_with_uuid)> COM_TYPE;
Of course this is just parsing support. Trying to use this in CodeGen will generate:
error: cannot yet mangle expression type CXXUuidofExpr
llvm-svn: 130381
Diffstat (limited to 'clang/tools/libclang/CIndex.cpp')
0 files changed, 0 insertions, 0 deletions

