#ifndef TOOLS_CLANG_PLUGINS_TESTS_UNSAFE_BUFFERS_CLEAN_H_
#define TOOLS_CLANG_PLUGINS_TESTS_UNSAFE_BUFFERS_CLEAN_H_
int clean_bad_stuff(int* i, unsigned s) {
return i[s];
}
int clean_guarded_bad_stuff(int* i, unsigned s) {
return UNSAFE_BUFFERS(i[s]);
}
int clean_bad_unique(std::unique_ptr<int[]>& i, unsigned s) {
return i[s];
}
int clean_guarded_bad_unique(std::unique_ptr<int[]>& i, unsigned s) {
return UNSAFE_BUFFERS(i[s]);
}
UNSAFE_FN void unsafe_fn() {}
inline void call_unsafe_stuff() {
unsafe_fn();
unsafe_fn();
UNSAFE_BUFFERS(unsafe_fn());
}
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-variable"
#pragma clang diagnostic pop
#endif