class conservative_exception
{
public:
conservative_exception(int what, char const* file=0, int line=0);
int what() const { return what_; }
int line() const { return line_; }
char const* file() const { return file_0 !=0 ? file_:0; }
private:
int what_;
int line_;
char file_[32];
};