1*f63da479SRyosuke Niwa // RUN: %clang_analyze_cc1 -analyzer-checker=alpha.webkit.UncountedCallArgsChecker -verify %s 2*f63da479SRyosuke Niwa // expected-no-diagnostics 3*f63da479SRyosuke Niwa 4*f63da479SRyosuke Niwa #include "mock-types.h" 5*f63da479SRyosuke Niwa 6*f63da479SRyosuke Niwa class Base { 7*f63da479SRyosuke Niwa public: 8*f63da479SRyosuke Niwa virtual ~Base(); 9*f63da479SRyosuke Niwa void ref() const; 10*f63da479SRyosuke Niwa void deref() const; 11*f63da479SRyosuke Niwa }; 12*f63da479SRyosuke Niwa 13*f63da479SRyosuke Niwa class Event : public Base { 14*f63da479SRyosuke Niwa protected: 15*f63da479SRyosuke Niwa explicit Event(); 16*f63da479SRyosuke Niwa }; 17*f63da479SRyosuke Niwa 18*f63da479SRyosuke Niwa class SubEvent : public Event { 19*f63da479SRyosuke Niwa public: 20*f63da479SRyosuke Niwa static Ref<SubEvent> create(); 21*f63da479SRyosuke Niwa private: 22*f63da479SRyosuke Niwa SubEvent() = default; 23*f63da479SRyosuke Niwa }; 24*f63da479SRyosuke Niwa 25*f63da479SRyosuke Niwa void someFunction(Base&); 26*f63da479SRyosuke Niwa test()27*f63da479SRyosuke Niwastatic void test() 28*f63da479SRyosuke Niwa { 29*f63da479SRyosuke Niwa someFunction(SubEvent::create()); 30*f63da479SRyosuke Niwa } 31