19f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks// RUN: %clang_cc1 -analyze -analyzer-checker=core,unix -verify %s 29f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks// expected-no-diagnostics 39f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks 49f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaksclass Loc { 59f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks int x; 69f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks}; 79f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaksclass P1 { 89f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zakspublic: 99f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks Loc l; 109f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks void setLoc(Loc L) { 119f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks l = L; 129f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks } 139f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks 149f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks}; 159f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaksclass P2 { 169f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zakspublic: 179f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks int m; 189f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks int accessBase() { 199f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks return m; 209f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks } 219f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks}; 229f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaksclass Derived: public P1, public P2 { 239f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks}; 249f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaksint radar13445834(Derived *Builder, Loc l) { 259f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks Builder->setLoc(l); 269f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks return Builder->accessBase(); 279f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks 289f3495aeaa24da4eacf8f6c274adcef65e2f3617Anna Zaks}