[OpenMP] Refactor const restriction for linear
authorJoel E. Denny <jdenny.ornl@gmail.com>
Fri, 4 Jan 2019 22:12:13 +0000 (22:12 +0000)
committerJoel E. Denny <jdenny.ornl@gmail.com>
Fri, 4 Jan 2019 22:12:13 +0000 (22:12 +0000)
commitbae586fb0a3d78104b589ad8977e6f29295aa930
treef0d7f9adc7dcf00e301fb434cb99db21ce401a7c
parentd2649292ef268cbc4b80854659a716791ad2c0b9
[OpenMP] Refactor const restriction for linear

As discussed in D56113, this patch refactors the implementation of the
const restriction for linear to reuse a function introduced by D56113.
A side effect is that, if a variable has mutable members, this
diagnostic is now skipped, and the diagnostic for the variable not
being an integer or pointer is reported instead.

Reviewed By: ABataev

Differential Revision: https://reviews.llvm.org/D56299

llvm-svn: 350441
16 files changed:
clang/lib/Sema/SemaOpenMP.cpp
clang/test/OpenMP/distribute_parallel_for_simd_linear_messages.cpp
clang/test/OpenMP/distribute_simd_linear_messages.cpp
clang/test/OpenMP/for_linear_messages.cpp
clang/test/OpenMP/for_simd_linear_messages.cpp
clang/test/OpenMP/parallel_for_linear_messages.cpp
clang/test/OpenMP/parallel_for_simd_linear_messages.cpp
clang/test/OpenMP/simd_linear_messages.cpp
clang/test/OpenMP/target_parallel_for_linear_messages.cpp
clang/test/OpenMP/target_parallel_for_simd_linear_messages.cpp
clang/test/OpenMP/target_simd_linear_messages.cpp
clang/test/OpenMP/target_teams_distribute_parallel_for_simd_linear_messages.cpp
clang/test/OpenMP/target_teams_distribute_simd_linear_messages.cpp
clang/test/OpenMP/taskloop_simd_linear_messages.cpp
clang/test/OpenMP/teams_distribute_parallel_for_simd_linear_messages.cpp
clang/test/OpenMP/teams_distribute_simd_linear_messages.cpp