1#ifndef SOURCEPOS_H 2#define SOURCEPOS_H 3 4#include <string> 5 6using namespace std; 7 8class SourcePos 9{ 10public: 11 string file; 12 int line; 13 14 SourcePos(const string& f, int l); 15 SourcePos(const SourcePos& that); 16 SourcePos(); 17 ~SourcePos(); 18 19 string ToString() const; 20 int Error(const char* fmt, ...) const; 21 22 static bool HasErrors(); 23 static void PrintErrors(FILE* to); 24}; 25 26extern const SourcePos GENERATED_POS; 27 28#endif // SOURCEPOS_H 29