diff options
| author | Alexey Bataev <a.bataev@hotmail.com> | 2015-01-22 05:29:28 +0000 |
|---|---|---|
| committer | Alexey Bataev <a.bataev@hotmail.com> | 2015-01-22 05:29:28 +0000 |
| commit | 13c7c4930c9067c1e0639c8c938422a503480755 (patch) | |
| tree | 356b3c96b039cb3262bc53418093b9b395b40e38 /clang/lib/Sema | |
| parent | a91745820385ca7cbeab2cfe1df15800703f619b (diff) | |
| download | bcm5719-llvm-13c7c4930c9067c1e0639c8c938422a503480755.tar.gz bcm5719-llvm-13c7c4930c9067c1e0639c8c938422a503480755.zip | |
[OPENMP] CodeGen for "omp atomic read [seq_cst]" directive.
"omp atomic read [seq_cst]" accepts expressions "v=x;". In this patch we perform
an atomic load of "x" (using builtin atomic loading instructions or a call to
"atomic_load()" for simple lvalues and "kmpc_atomic_start();load
<x>;kmpc_atomic_end();" for other lvalues), convert the result of loading to
type of "v" (using EmitScalarConversion() for simple types and
EmitComplexToScalarConversion() for conversions from complex to scalar) and then
store the result in "v".
Differential Revision: http://reviews.llvm.org/D6431
llvm-svn: 226784
Diffstat (limited to 'clang/lib/Sema')
| -rw-r--r-- | clang/lib/Sema/SemaType.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaType.cpp b/clang/lib/Sema/SemaType.cpp index 5624f709c9a..d1ab98510f7 100644 --- a/clang/lib/Sema/SemaType.cpp +++ b/clang/lib/Sema/SemaType.cpp @@ -2716,7 +2716,7 @@ static TypeSourceInfo *GetFullTypeForDeclarator(TypeProcessingState &state, // and not, for instance, a pointer to a function. if (D.getDeclSpec().containsPlaceholderType() && !FTI.hasTrailingReturnType() && chunkIndex == 0 && - !S.getLangOpts().CPlusPlus14) { + !S.getLangOpts().CPlusPlus14 && !S.getLangOpts().MSVCCompat) { S.Diag(D.getDeclSpec().getTypeSpecTypeLoc(), D.getDeclSpec().getTypeSpecType() == DeclSpec::TST_auto ? diag::err_auto_missing_trailing_return |

