From: Tom Tromey Date: Sun, 26 Nov 2000 01:39:48 +0000 (+0000) Subject: * automake.in (file_contents_with_transform): Added file name and X-Git-Tag: Release-1-4b~21 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=122bec9a39f91ba00cde567fb5a38f138e37e093;p=automake.git * automake.in (file_contents_with_transform): Added file name and line number to error report. (MACRO_PATTERH, BOGUS_MACRO_PATTERN): Leading spaces are ok. --- diff --git a/ChangeLog b/ChangeLog index 585d4e57..c25ee52d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2000-11-25 Tom Tromey + + * automake.in (file_contents_with_transform): Added file name and + line number to error report. + (MACRO_PATTERH, BOGUS_MACRO_PATTERN): Leading spaces are ok. + 2000-11-23 Pavel Roskin * m4/regex.m4 (AM_WITH_REGEX): This macro was broken because diff --git a/automake.in b/automake.in index 89a88c95..8dc81726 100755 --- a/automake.in +++ b/automake.in @@ -41,8 +41,11 @@ $WHITE_PATTERN = "^[ \t]*\$"; $COMMENT_PATTERN = "^#"; $RULE_PATTERN = "^([\$a-zA-Z_.][-.a-zA-Z0-9_(){}/\$]*) *:([^=].*|)\$"; $SUFFIX_RULE_PATTERN = "^\\.([a-zA-Z0-9]+)\\.([a-zA-Z0-9]+)\$"; -$MACRO_PATTERN = "^([A-Za-z0-9_]+)[ \t]*([:+]?)=[ \t]*(.*)\$"; -$BOGUS_MACRO_PATTERN = "^([^ \t]*)[ \t]*([:+]?)=[ \t]*(.*)\$"; +# Only recognize leading spaces, not leading tabs. If we recognize +# leading tabs here then we need to make the reader smarter, because +# otherwise it will think rules like `foo=bar; \' are errors. +$MACRO_PATTERN = "^ *([A-Za-z0-9_]+)[ \t]*([:+]?)=[ \t]*(.*)\$"; +$BOGUS_MACRO_PATTERN = "^ *([^ \t]*)[ \t]*([:+]?)=[ \t]*(.*)\$"; $GNITS_VERSION_PATTERN = "[0-9]+\\.[0-9]+([a-z]|\\.[0-9]+)?"; $IF_PATTERN = "^if[ \t]+\([A-Za-z][A-Za-z0-9_]*\)[ \t]*\(#.*\)?\$"; $ELSE_PATTERN = "^else[ \t]*\(#.*\)?\$"; @@ -7009,7 +7012,7 @@ sub file_contents_with_transform $result_vars .= $comment . $spacing . $_ if ! $skipping; $comment = $spacing = ''; $saw_bk = /\\$/; - print STDERR "automake: programming error: .am macro \`$1' with trailing backslash\n" + print STDERR "automake: programming error: .am macro \`$1' with trailing backslash at $file:$.\n" if $saw_bk; $am_var_defs{$1} = $3; }