JonasToth added inline comments.

================
Comment at: clang-tidy/openmp/UseDefaultNoneCheck.cpp:51
+///        instead of the actual OpenMPClauseKind.
+AST_MATCHER_P(OMPExecutableDirective, isAllowedToContainClause,
+              OpenMPClauseKind, CKind) {
----------------
Why is this required? If it is not allowed, is the shouldn't that be a 
compilation error already (always assuming openmp is activated).


================
Comment at: clang-tidy/openmp/UseDefaultNoneCheck.cpp:97
+///
+/// Given, `ompDefaultClause(hasKind(OMPC_DEFAULT_shared))`:
+///
----------------
you could provide helper-matchers similiar to `isImplicit()`, `isInline()` to 
allow `ompDefaultClause(isDefaultShared())`.


================
Comment at: clang-tidy/openmp/UseDefaultNoneCheck.cpp:131
+      Result.Nodes.getNodeAs<OMPExecutableDirective>("directive");
+  assert(Directive != nullptr);
+
----------------
assert without message, but probably redundant anyway, because the matcher can 
only fire if `directive` matched.


================
Comment at: clang-tidy/openmp/UseDefaultNoneCheck.cpp:135
+    diag(Directive->getBeginLoc(),
+         "OpenMP directive '%0' is allowed to contain the 'default' clause, "
+         "and 'default' clause exists with '%1' kind. Consider using "
----------------
the message is too long, how about `consider specifiying clause 'default(none)' 
explicitly` or so?
Adding that it would be allowed is redundant, as one expects the tool to know 
that and consider that correctly and not diagnose otherwise.


================
Comment at: test/clang-tidy/openmp-use-default-none.cpp:26
+void t2() {
+#pragma omp parallel default(none)
+  ;
----------------
AFAIK `default(private)` should exist as well, please add tests for the other 
kinds, too.


================
Comment at: test/clang-tidy/openmp-use-default-none.cpp:67
+  // CHECK-NOTES: :[[@LINE-3]]:9: warning: OpenMP directive 'parallel for' is 
allowed to contain the 'default' clause, and 'default' clause exists with 
'shared' kind. Consider using 'default(none)' clause instead.
+  // CHECK-NOTES: :[[@LINE-4]]:26: note: Existing 'default' clause is 
specified here.
+}
----------------
why rewrite the `default(shared)`? I don't exactly understand the reason for 
not accepting `default(shared)`.


Repository:
  rCTE Clang Tools Extra

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D57113/new/

https://reviews.llvm.org/D57113



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to