+
+char const* lexer_get_current_filepath
+()
+{ static char current_path[PATH_MAX];
+ static char const* last_filename;
+ if ((!last_filename || last_filename != current_filename) &&
+ (realpath(current_filename, current_path) != current_path))
+ { perror("realpath: ");
+ return NULL;
+ }
+ return (const char*)current_path;
+}