//===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // UNSUPPORTED: c++03, c++11, c++14 // // // [simd.traits] // template struct memory_alignment; // template // inline constexpr std::size_t memory_alignment_v = memory_alignment::value; #include namespace ex = std::experimental::parallelism_v2; int main(int, char**) { (void)ex::memory_alignment, bool>::value; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment::value; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment, int>::value; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment, bool>::value; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment_v, bool>; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment_v; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment_v, int>; // expected-error-re@* {{no member named 'value' in {{.*}}}} (void)ex::memory_alignment_v, bool>; // expected-error-re@* {{no member named 'value' in {{.*}}}} return 0; }