diff options
Diffstat (limited to 'clang/test/Analysis/inline-if-constexpr.cpp')
-rw-r--r-- | clang/test/Analysis/inline-if-constexpr.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/Analysis/inline-if-constexpr.cpp b/clang/test/Analysis/inline-if-constexpr.cpp new file mode 100644 index 00000000000..51293a187ce --- /dev/null +++ b/clang/test/Analysis/inline-if-constexpr.cpp @@ -0,0 +1,18 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=core,debug.ExprInspection \ +// RUN: -analyzer-inline-max-stack-depth=5 -w -std=c++17 -verify %s + +void clang_analyzer_eval(bool); + +namespace inline_large_functions_with_if_constexpr { +bool f0() { if constexpr (true); return true; } +bool f1() { if constexpr (true); return f0(); } +bool f2() { if constexpr (true); return f1(); } +bool f3() { if constexpr (true); return f2(); } +bool f4() { if constexpr (true); return f3(); } +bool f5() { if constexpr (true); return f4(); } +bool f6() { if constexpr (true); return f5(); } +bool f7() { if constexpr (true); return f6(); } +void bar() { + clang_analyzer_eval(f7()); // expected-warning{{TRUE}} +} +} // namespace inline_large_functions_with_if_constexpr |