[OPENMP] Initial parsing and sema analysis for 'single' directive.
llvm-svn: 211774
diff --git a/clang/lib/Parse/ParseOpenMP.cpp b/clang/lib/Parse/ParseOpenMP.cpp
index 11e888e..102cab3 100644
--- a/clang/lib/Parse/ParseOpenMP.cpp
+++ b/clang/lib/Parse/ParseOpenMP.cpp
@@ -65,6 +65,7 @@
case OMPD_for:
case OMPD_sections:
case OMPD_section:
+ case OMPD_single:
Diag(Tok, diag::err_omp_unexpected_directive)
<< getOpenMPDirectiveName(DKind);
break;
@@ -80,8 +81,8 @@
/// annot_pragma_openmp_end
///
/// executable-directive:
-/// annot_pragma_openmp 'parallel'|'simd'|'for'|'sections'|'section'
-/// {clause} annot_pragma_openmp_end
+/// annot_pragma_openmp 'parallel' | 'simd' | 'for' | 'sections' |
+/// 'section' | 'single' {clause} annot_pragma_openmp_end
///
StmtResult Parser::ParseOpenMPDeclarativeOrExecutableDirective() {
assert(Tok.is(tok::annot_pragma_openmp) && "Not an OpenMP directive!");
@@ -121,6 +122,7 @@
case OMPD_simd:
case OMPD_for:
case OMPD_sections:
+ case OMPD_single:
case OMPD_section: {
ConsumeToken();