summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/test/SemaCXX/attr-likelihood.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/attr-likelihood.cpp b/clang/test/SemaCXX/attr-likelihood.cpp
index f7503fed49b9..642d62fa8982 100644
--- a/clang/test/SemaCXX/attr-likelihood.cpp
+++ b/clang/test/SemaCXX/attr-likelihood.cpp
@@ -159,4 +159,18 @@ constexpr int constexpr_function() {
[[likely]] return 0;
}
static_assert(constexpr_function() == 0);
+
+constexpr double pow(double x, long long n) noexcept {
+ if (n > 0) [[likely]]
+ return x * pow(x, n - 1);
+ else [[unlikely]]
+ return 1;
+}
+constexpr long long fact(long long n) noexcept {
+ if (n > 1) [[likely]]
+ return n * fact(n - 1);
+ else [[unlikely]]
+ return 1;
+}
+
#endif