summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/Parser.cpp
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2015-10-19 06:40:17 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2015-10-19 06:40:17 +0000
commit1d97d2a3d20e1490a72d3275c37ad57df3ede45c (patch)
treee24628f1815fec181bba378fff598822efd1213d /clang/lib/Parse/Parser.cpp
parentd0a7d6e4eebf22800b955080ca754188e73acb64 (diff)
downloadbcm5719-llvm-1d97d2a3d20e1490a72d3275c37ad57df3ede45c.tar.gz
bcm5719-llvm-1d97d2a3d20e1490a72d3275c37ad57df3ede45c.zip
[OPENMP] Fix for http://llvm.org/PR25221: Infinite loop while parsing OpenMP directive
Clang skipped annot_pragma_openmp token, while it should be considered as a stop token while skipping tokens. llvm-svn: 250684
Diffstat (limited to 'clang/lib/Parse/Parser.cpp')
-rw-r--r--clang/lib/Parse/Parser.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Parse/Parser.cpp b/clang/lib/Parse/Parser.cpp
index 5b0704658a2..26dc3998ad8 100644
--- a/clang/lib/Parse/Parser.cpp
+++ b/clang/lib/Parse/Parser.cpp
@@ -282,6 +282,7 @@ bool Parser::SkipUntil(ArrayRef<tok::TokenKind> Toks, SkipUntilFlags Flags) {
// Ran out of tokens.
return false;
+ case tok::annot_pragma_openmp:
case tok::annot_pragma_openmp_end:
// Stop before an OpenMP pragma boundary.
case tok::annot_module_begin:
OpenPOWER on IntegriCloud