[OPENMP]Fix PR47158, case 3: allow devic_typein nested declare target region.
authorAlexey Bataev <a.bataev@hotmail.com>
Wed, 19 Aug 2020 19:23:00 +0000 (15:23 -0400)
committerAlexey Bataev <a.bataev@hotmail.com>
Mon, 24 Aug 2020 13:58:37 +0000 (09:58 -0400)
commitbedc841a5098bc0a90bbc66328d7aab4b2c23c4a
treec05905fb4907cc1b1e262b611b82fcf20fa8bc0a
parent5a34b3ab95b5659ef395ffe7b6bd79f2a0423514
[OPENMP]Fix PR47158, case 3: allow devic_typein nested declare target region.

OpenMP 5.0 supports nested declare target regions. So, in general,it is
allow to mark a declarationas declare target with different device_type
or link type. Patch adds support for such kind of nesting.

Differential Revision: https://reviews.llvm.org/D86239
clang/include/clang/Basic/Attr.td
clang/include/clang/Sema/Sema.h
clang/lib/AST/AttrImpl.cpp
clang/lib/Sema/SemaOpenMP.cpp
clang/lib/Serialization/ASTReaderDecl.cpp
clang/test/AST/dump.cpp
clang/test/OpenMP/declare_target_ast_print.cpp