diff options
Diffstat (limited to 'bisonfix.awk')
-rw-r--r-- | bisonfix.awk | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/bisonfix.awk b/bisonfix.awk index ba071ef4..a759d25b 100644 --- a/bisonfix.awk +++ b/bisonfix.awk @@ -19,18 +19,24 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -/^#if \(! defined \(yyoverflow\) \\/ { +BEGIN { sfile = ARGV[1] ; delete ARGV[1] } + +/^#if.*\\$/ { line = $0 sub(/\\$/, "", line) getline line2 - sub(/\\$/, "", line2) - getline line3 - - line = line line2 line3 + while (line2 ~ /\\$/) { + line = line line2 + sub(/\\$/, "", line) + getline line2 + } + line = line line2 + sub(/\\$/, "", line) print line next } -/^#line.*y\.tab\.c/ { sub(/y.tab.c/, "awkgram.c") } +/^#line.*y\.tab\.c/ { sub(/y.tab/, sfile) } { print } + |