+#[ \t]+[0-9]+[ \t]+.* {
+ int lnum;
+ char file[1024];
+ if(sscanf(yytext, "# %d \"%1023[^\"]\"", &lnum, file) == 2) {
+ offset_lnum = yylineno - lnum + 1;
+ current_file = file;
+ if(original_file == "")
+ original_file = file;
+ } else {
+ std::cerr << "Warning: Parse error in processor info directive.\n";
+ }
+}