================
Comment at: include/clang/Parse/Parser.h:638
@@ -637,3 +637,3 @@
   /// SkipToTok is specified, it calls SkipUntil(SkipToTok).  Finally, true is
   /// returned.
   bool ExpectAndConsume(tok::TokenKind ExpectedTok, unsigned Diag,
----------------
hfin...@anl.gov wrote:
> Please describe what NoCount does here.
Ok

================
Comment at: include/clang/Parse/Parser.h:746
@@ -744,3 +745,3 @@
   /// If SkipUntil finds the specified token, it returns true, otherwise it
   /// returns false.
   bool SkipUntil(tok::TokenKind T, bool StopAtSemi = true,
----------------
hfin...@anl.gov wrote:
> And also describe NoCount here (as with the other parameters).
Ok

================
Comment at: lib/Parse/ParseOpenMP.cpp:181
@@ -179,2 +180,3 @@
+    SkipUntil(tok::annot_pragma_openmp_end, false, false, false, true);
     break;
   }
----------------
hfin...@anl.gov wrote:
> This is not your fault, but these boolean parameters are becoming 
> increasingly difficult to read.  I'm afraid that adding one more may push 
> this over the limit into problems. I'd prefer that, before making this 
> change, we change the current code to use some bit values that can be or'd 
> together.
Ok, I'll rework it for the bit values.

================
Comment at: test/OpenMP/threadprivate_messages.cpp:28
@@ +27,3 @@
+#pragma omp threadprivate (a) ( // expected-error {{'#pragma omp 
threadprivate' must precede all references to variable 'a'}} expected-warning 
{{extra tokens at the end of '#pragma omp threadprivate' are ignored}}
+#pragma omp threadprivate (a) [ // expected-error {{'#pragma omp 
threadprivate' must precede all references to variable 'a'}} expected-warning 
{{extra tokens at the end of '#pragma omp threadprivate' are ignored}}
+#pragma omp threadprivate (a) { // expected-error {{'#pragma omp 
threadprivate' must precede all references to variable 'a'}} expected-warning 
{{extra tokens at the end of '#pragma omp threadprivate' are ignored}}
----------------
hfin...@anl.gov wrote:
> I don't understand why there is both an error and a warning here. Can we get 
> rid of the 'extra tokens' warning? That's misleading because the syntax is 
> fine, the error is semantic.
I don't think you're right. Actually, there are 2 troubles with this code:
1. Reference to variable that have been used already.
2. Extra symbols at the end of directives ({, ), ] or } ).
I think we have to report about both bugs, though for the last one we should 
emit a warning message, not error (just like for all other pragmas).


http://llvm-reviews.chandlerc.com/D1847
_______________________________________________
cfe-commits mailing list
cfe-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to