mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-26 15:36:09 +00:00

Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952. Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits Differential Revision: https://reviews.llvm.org/D30373 llvm-svn: 296895
30 lines
402 B
C++
30 lines
402 B
C++
// RUN: %clang_analyze_cc1 -analyzer-checker=core,debug.ExprInspection -analyzer-config c++-inlining=constructors -verify %s
|
|
|
|
void clang_analyzer_eval(bool);
|
|
|
|
class A {
|
|
int x;
|
|
public:
|
|
A();
|
|
int getx() const {
|
|
return x;
|
|
}
|
|
};
|
|
|
|
A::A() : x(0) {
|
|
}
|
|
|
|
class B : public A {
|
|
int y;
|
|
public:
|
|
B();
|
|
};
|
|
|
|
B::B() {
|
|
}
|
|
|
|
void f() {
|
|
B b;
|
|
clang_analyzer_eval(b.getx() == 0); // expected-warning{{TRUE}}
|
|
}
|