alexfh added a comment.

Sorry for the delay (mostly due to the holidays here).

The check looks very useful, at least, the pattern is hard to spot by manual 
inspection. A few comments though, mostly style-related.


================
Comment at: clang-tidy/misc/FoldInitTypeCheck.cpp:21
@@ +20,3 @@
+/// Returns the value_type for an InputIterator type.
+static QualType getInputIteratorValueType(const Type &IteratorType,
+                                          const ASTContext &context) {
----------------
I suspect, a significant part of this could be done in the matcher. I might be 
wrong, but it seems worth trying. The resulting code is usually much shorter 
and cleaner.

================
Comment at: clang-tidy/misc/FoldInitTypeCheck.cpp:57
@@ +56,3 @@
+  //  - a bigger int, regardless of signedness.
+  //  - FIXME: should it be a warning to fold into floating point ?
+  if (ValueType.isInteger()) {
----------------
nit: no space needed before the question mark.

================
Comment at: clang-tidy/misc/FoldInitTypeCheck.cpp:101
@@ +100,3 @@
+      getInputIteratorValueType(*Iterator->getType(), *Result.Context);
+  if (ValueType.isNull()) {
+    return;
----------------
nit: No braces needed for one line `if` bodies. Here and elsewhere.

================
Comment at: test/clang-tidy/misc-fold-init-type.cpp:17
@@ +16,3 @@
+  return std::accumulate(a, a + 1, 0);
+  // CHECK-MESSAGES: [[@LINE-1]]:10: warning: folding type 'float' into type
+  // 'int' might result in loss of precision [misc-fold-init-type]
----------------
The CHECK lines shouldn't be broken. Looks like your clang-format doesn't use 
-style=file by default.

================
Comment at: test/clang-tidy/misc-fold-init-type.cpp:24
@@ +23,3 @@
+  return std::accumulate(it, it, 0);
+  // CHECK-MESSAGES: [[@LINE-1]]:10: warning: folding type 'float' into type
+  // 'int' might result in loss of precision [misc-fold-init-type]
----------------
We usually specify each unique message completely once and truncate static 
parts of all other patterns to a make the test more readable. E.g. here I would 
remove everything after 'int'.


http://reviews.llvm.org/D18442



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

Reply via email to