+class unsupported_shader: public std::runtime_error
+{
+public:
+ unsupported_shader(const std::string &w): runtime_error(w) { }
+ virtual ~unsupported_shader() throw() { }
+};
+
+struct Diagnostic
+{
+ enum Severity
+ {
+ INFO,
+ WARN,
+ ERR
+ };
+
+ Severity severity;
+ int source;
+ unsigned line;
+ std::string message;
+
+ Diagnostic(): severity(INFO), source(-2), line(0) { }
+};
+