1*1745ba41SBalázs Kéri // RUN: %clang_analyze_cc1 -verify %s \ 2*1745ba41SBalázs Kéri // RUN: -analyzer-checker=security 3*1745ba41SBalázs Kéri 4*1745ba41SBalázs Kéri void bzero(void *, unsigned long); 5*1745ba41SBalázs Kéri foo(T l)6*1745ba41SBalázs Kéritemplate <typename T> void foo(T l) { 7*1745ba41SBalázs Kéri // The warning comes from multiple instances and with 8*1745ba41SBalázs Kéri // different declarations that have same source location. 9*1745ba41SBalázs Kéri // One instance should be shown. 10*1745ba41SBalázs Kéri bzero(l, 1); // expected-warning{{The bzero() function is obsoleted}} 11*1745ba41SBalázs Kéri } 12*1745ba41SBalázs Kéri p(int * p,unsigned * q)13*1745ba41SBalázs Kérivoid p(int *p, unsigned *q) { 14*1745ba41SBalázs Kéri foo(p); 15*1745ba41SBalázs Kéri foo(q); 16*1745ba41SBalázs Kéri } 17