xref: /openbsd-src/regress/usr.bin/m4/reconstitute (revision 739ce1244bb934393fb8432151f4a6f43b5e42cc)
1*739ce124Sespie#! /usr/bin/perl
2*739ce124Sespie# $OpenBSD: reconstitute,v 1.1 2005/09/06 15:33:21 espie Exp $
3*739ce124Sespie
4*739ce124Sespie# Written by Marc Espie, 2005
5*739ce124Sespie# Public domain
6*739ce124Sespie
7*739ce124Sespie# This simple perl script puts back line numbers everywhere.
8*739ce124Sespie# This is suitable for testing synchronization, as we don't really
9*739ce124Sespie# care how many synchronization marks we emit, as long as the line
10*739ce124Sespie# numbers match
11*739ce124Sespie
12*739ce124Sespieuse File::Basename;
13*739ce124Sespie
14*739ce124Sespiemy ($lineno, $file) = (-1, "<unknown>");
15*739ce124Sespie
16*739ce124Sespiewhile (<>) {
17*739ce124Sespie	if (m/^#line\s+(\d+)\s+\"(.*)\"/) {
18*739ce124Sespie		($lineno, $file) = ($1, $2);
19*739ce124Sespie		$file=basename($file);
20*739ce124Sespie	} else {
21*739ce124Sespie		print "$file:$lineno:$_";
22*739ce124Sespie		$lineno++;
23*739ce124Sespie	}
24*739ce124Sespie}
25