1651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// RUN: %clang_cc1 -emit-llvm -triple %itanium_abi_triple -o - %s | FileCheck %s 2a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker 3a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Tokernamespace N { 4a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker void free(void *i) {} 5a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker} 6a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker 7a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Tokerint main(void) { 8a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker // CHECK: call void @_ZN1N4freeEPv 9a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker void *fp __attribute__((cleanup(N::free))); 10a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker return 0; 11a3bfa54f2ad8600fc1bb3d39b37e3cd5469ccbb6Alp Toker} 12