diff options
| author | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2018-05-09 13:16:17 +0000 |
|---|---|---|
| committer | Sven van Haastregt <sven.vanhaastregt@arm.com> | 2018-05-09 13:16:17 +0000 |
| commit | 2ca6ba1045c9fbc3629034fbf2da11055c1e35ff (patch) | |
| tree | 484830944f2b09546677121bf8e6cd7d9f7f555c /llvm/lib/Support/ARMBuildAttrs.cpp | |
| parent | f384bc716638d94406658be70c3ece82670905c9 (diff) | |
| download | bcm5719-llvm-2ca6ba1045c9fbc3629034fbf2da11055c1e35ff.tar.gz bcm5719-llvm-2ca6ba1045c9fbc3629034fbf2da11055c1e35ff.zip | |
[OpenCL] Restrict various keywords in OpenCL C++ mode
Restrict the following keywords in the OpenCL C++ language mode,
according to Sections 2.2 & 2.9 of the OpenCL C++ 1.0 Specification.
- dynamic_cast
- typeid
- register (already restricted in OpenCL C, update the diagnostic)
- thread_local
- exceptions (try/catch/throw)
- access qualifiers read_only, write_only, read_write
Support the `__global`, `__local`, `__constant`, `__private`, and
`__generic` keywords in OpenCL C++. Leave the unprefixed address
space qualifiers such as global available, i.e., do not mark them as
reserved keywords in OpenCL C++. libclcxx provides explicit address
space pointer classes such as `global_ptr` and `global<T>` that are
implemented using the `__`-prefixed qualifiers.
Differential Revision: https://reviews.llvm.org/D46022
llvm-svn: 331874
Diffstat (limited to 'llvm/lib/Support/ARMBuildAttrs.cpp')
0 files changed, 0 insertions, 0 deletions

