| // RUN: %clang_analyze_cc1 -std=c++14 -analyzer-checker=core,debug.ExprInspection %s -verify |
| void clang_analyzer_checkInlined(bool); |
| void clang_analyzer_eval(int); |
| namespace EnumsViaMemberExpr { |
| void testEnumVal(Foo Baz) { |
| clang_analyzer_eval(Baz.Bar == Foo::Bar); // expected-warning{{TRUE}} |
| void testEnumRef(Foo &Baz) { |
| clang_analyzer_eval(Baz.Bar == Foo::Bar); // expected-warning{{TRUE}} |
| void testEnumPtr(Foo *Baz) { |
| clang_analyzer_eval(Baz->Bar == Foo::Bar); // expected-warning{{TRUE}} |
| void g(bool (A::*mp_f)() const) { |
| // This used to trigger an assertion because the 'this' pointer is a |