diff options
Diffstat (limited to 'docs/clang-tidy/checks/abseil-time-comparison.rst')
-rw-r--r-- | docs/clang-tidy/checks/abseil-time-comparison.rst | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/docs/clang-tidy/checks/abseil-time-comparison.rst b/docs/clang-tidy/checks/abseil-time-comparison.rst new file mode 100644 index 00000000..9342e4cf --- /dev/null +++ b/docs/clang-tidy/checks/abseil-time-comparison.rst @@ -0,0 +1,23 @@ +.. title:: clang-tidy - abseil-time-comparison + +abseil-time-comparison +====================== + +Prefer comparisons in the ``absl::Time`` domain instead of the integer domain. + +N.B.: In cases where an ``absl::Time`` is being converted to an integer, +alignment may occur. If the comparison depends on this alignment, doing the +comparison in the ``absl::Time`` domain may yield a different result. In +practice this is very rare, and still indicates a bug which should be fixed. + +Examples: + +.. code-block:: c++ + + // Original - Comparison in the integer domain + int x; + absl::Time t; + if (x < absl::ToUnixSeconds(t)) ... + + // Suggested - Compare in the absl::Time domain instead + if (absl::FromUnixSeconds(x) < t) ... |