diff options
-rw-r--r-- | clang/test/SemaCXX/attr-likelihood.cpp | 14 |
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 |