Hi Wei, thank you for review. See my comments.

================
Comment at: lib/Sema/SemaOpenMP.cpp:667
@@ +666,3 @@
+  bool ErrorFound = false;
+  if (DSAChecker.getImplicitFirstprivate().size() > 0) {
+    if (OMPClause *Implicit =
----------------
Wei Pan wrote:
> !  get...().empty()
Ok, I'll fix it.

================
Comment at: lib/Sema/SemaOpenMP.cpp:692
@@ -646,1 +691,3 @@
+
+  if (ErrorFound) return StmtError();
   return Res;
----------------
Wei Pan wrote:
> The logic could be improved. Program could exit early if it only returns 
> StmtError in the end.
Wei, no, everything is correct. We need to complete semantic analysis for all 
clauses and directives (to report all possible errors) and exit function only 
after this analysis. 

================
Comment at: lib/Sema/SemaOpenMP.cpp:1055
@@ +1054,3 @@
+    }
+    if (DVar.CKind != OMPC_unknown && DVar.CKind != OMPC_firstprivate &&
+        !(DVar.CKind == OMPC_shared && !DVar.RefExpr &&
----------------
Wei Pan wrote:
> Seem difficult to read what it is checking. In particular, DVar.RefExpr is 
> also checked inside if-then.
Ok, Шэд try to improve the code.


http://llvm-reviews.chandlerc.com/D1694
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to