[libcxx-commits] [PATCH] D76636: [RFC] Added type trait to remove address space qualifier from type
John McCall via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Mar 24 14:34:11 PDT 2020
rjmccall added a comment.
Address spaces are actually defined in a number of standardized C extensions that are compatible with C++, such as the Embedded C specification, OpenCL, and so on. There's precedent for libc++ accepting work that supports this kind of C++-compatible extension in the past; for example, `std::is_pointer` looks through Objective-C's ARC type qualifiers. That said, (1) libc++ hasn't actually added new traits for such things before, just taught existing traits to handle them, and (2) I think this definition wouldn't actually work for cases like the OpenCL address spaces because they're not expressible as `__attribute__((address_space(N)))`. (2) is fixable; (1) may be a reasonable place to draw the line on policy.
CHANGES SINCE LAST ACTION
More information about the libcxx-commits