summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
Diffstat (limited to 'source4')
-rw-r--r--source4/build/pidl/idl.pm9
-rw-r--r--source4/build/pidl/idl.yp9
2 files changed, 16 insertions, 2 deletions
diff --git a/source4/build/pidl/idl.pm b/source4/build/pidl/idl.pm
index d5c0ae0071..ee7fd8d9cf 100644
--- a/source4/build/pidl/idl.pm
+++ b/source4/build/pidl/idl.pm
@@ -1937,7 +1937,14 @@ again:
$parser->YYData->{INPUT_FILENAME} = $2;
goto again;
}
- goto again;
+ if (s/^\#line (\d+) \"(.*?)\"( \d+|)//) {
+ $parser->YYData->{LINE} = $1-1;
+ $parser->YYData->{INPUT_FILENAME} = $2;
+ goto again;
+ }
+ if (s/^(\#.*)$//m) {
+ goto again;
+ }
}
if (s/^(\n)//) {
$parser->YYData->{LINE}++;
diff --git a/source4/build/pidl/idl.yp b/source4/build/pidl/idl.yp
index bfc4698709..93446dc8c1 100644
--- a/source4/build/pidl/idl.yp
+++ b/source4/build/pidl/idl.yp
@@ -267,7 +267,14 @@ again:
$parser->YYData->{INPUT_FILENAME} = $2;
goto again;
}
- goto again;
+ if (s/^\#line (\d+) \"(.*?)\"( \d+|)//) {
+ $parser->YYData->{LINE} = $1-1;
+ $parser->YYData->{INPUT_FILENAME} = $2;
+ goto again;
+ }
+ if (s/^(\#.*)$//m) {
+ goto again;
+ }
}
if (s/^(\n)//) {
$parser->YYData->{LINE}++;