template<typename _Tp>
class auto_ptr {
private:
_Tp* _M_ptr;
public:
auto_ptr(_Tp* __p = 0) throw() : _M_ptr(__p) { }
~auto_ptr() { delete _M_ptr; }
};
void cause_div_by_zero_in_header(int in) {
int h = 0;
h = in/h;
h++;
}
void do_something (int in) {
in++;
in++;
}
void cause_div_by_zero_in_header2(int in) {
int h2 = 0;
h2 = in/h2;
h2++;
}
# define CALLS_BUGGY_FUNCTION2 cause_div_by_zero_in_header2(5);
void cause_div_by_zero_in_header3(int in) {
int h3 = 0;
h3 = in/h3;
h3++;
}
# define CALLS_BUGGY_FUNCTION3 cause_div_by_zero_in_header3(5);
void cause_div_by_zero_in_header4(int in) {
int h4 = 0;
h4 = in/h4;
h4++;
}
# define TAKE_CALL_AS_ARG(c) c;