1 // RUN: %clang_cc1 -fmodules -verify %s 2 // expected-no-diagnostics 3 4 #pragma clang module build M 5 module M {} 6 #pragma clang module contents 7 #pragma clang module begin M 8 struct A { 9 A(); 10 ~A() { delete p; } // expected-warning {{'delete' applied to a pointer that was allocated with 'new[]'}} 11 int *p; 12 }; A()13inline A::A() : p(new int[32]) {} // expected-note {{allocated}} 14 struct B { 15 B(); ~BB16 ~B() { delete p; } 17 int *p; 18 }; 19 #pragma clang module end 20 #pragma clang module endbuild 21 22 #pragma clang module import M B()23B::B() : p(new int[32]) {} 24