This patch is to add parsing and sema support for map clause. This includes the new map types and the map type modifier added in OpenMP 4.5.
Details
Diff Detail
Event Timeline
include/clang/AST/OpenMPClause.h | ||
---|---|---|
2628 | I don't like the idea of friend Sema. If Sema needs some interfaces, they must be public. | |
include/clang/Basic/OpenMPKinds.h | ||
83 | This must be the last element in enum. | |
87 | Remove this one, it is not required | |
include/clang/Sema/Sema.h | ||
8035–8036 | I think DepLinLoc and MapLoc can joined into one argument, like DepLinMapLoc | |
lib/AST/StmtPrinter.cpp | ||
853–854 | I think MapType can be optional, just like MapTypeModifier | |
856–858 | Better to use ranged for, if possible | |
lib/Parse/ParseOpenMP.cpp | ||
776–781 | These two can be joined | |
lib/Sema/SemaOpenMP.cpp | ||
7481–7483 | Use ranged loop and do not use noload version. | |
7502–7504 | Ranged loop | |
7506–7508 | Braces are not needed | |
7521–7523 | Extra braces | |
7635–7637 | Extra braces | |
test/OpenMP/target_map_messages.cpp | ||
2 | Tests for templates, serialization/deserialization, AST printing, region nesting |
include/clang/AST/OpenMPClause.h | ||
---|---|---|
2660–2662 | Not all important arguments are described | |
2683–2686 | Not all important arguments are described | |
lib/Basic/OpenMPKinds.cpp | ||
199 | Extra spaces between arg and ')' | |
lib/Sema/SemaOpenMP.cpp | ||
318–342 | Tmp is bad name. | |
test/OpenMP/target_data_ast_print.cpp | ||
1 | Also add tests for templates, serialization/deserialization | |
test/OpenMP/target_map_messages.cpp | ||
3 | Still no tests for templates |
I don't like the idea of friend Sema. If Sema needs some interfaces, they must be public.