+/* A file location. */
+struct msg_locator
+ {
+ char *file_name; /* File name. */
+ int line_number; /* Line number. */
+ };
+
+/* A message. */
+struct msg
+ {
+ enum msg_category category; /* Message category. */
+ enum msg_severity severity; /* Message severity. */
+ struct msg_locator where; /* File location, or (NULL, -1). */
+ char *text; /* Error text. */
+ };
+
+struct source_stream ;