From 873932cbc5319d668a2f91466df9a60c59b8dac0 Mon Sep 17 00:00:00 2001 From: Alexandre Duret-Lutz Date: Tue, 25 Feb 2003 17:30:52 +0000 Subject: [PATCH] * automake.in (read_am_file): Catch trailing backslashes on last line. * tests/backsl3.test: New file. * tests/Makefile.am (TESTS): Add backsl3.test. Reported by Akim Demaille. --- ChangeLog | 7 +++++++ automake.in | 3 +++ tests/Makefile.am | 1 + tests/Makefile.in | 1 + tests/backsl3.test | 35 +++++++++++++++++++++++++++++++++++ 5 files changed, 47 insertions(+) create mode 100755 tests/backsl3.test diff --git a/ChangeLog b/ChangeLog index 3b555fd8..002fed61 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2003-02-25 Alexandre Duret-Lutz + + * automake.in (read_am_file): Catch trailing backslashes on last line. + * tests/backsl3.test: New file. + * tests/Makefile.am (TESTS): Add backsl3.test. + Reported by Akim Demaille. + 2003-02-24 Alexandre Duret-Lutz * ChangeLog: Move 2002's entries to ... diff --git a/automake.in b/automake.in index 840b643c..674ffd16 100755 --- a/automake.in +++ b/automake.in @@ -7625,6 +7625,9 @@ sub read_am_file ($$) $output_trailer .= $comment; + error ($where, "trailing backslash on last line") + if $saw_bk; + error ($where, (@cond_stack ? "unterminated conditionals: @cond_stack" : "too many conditionals closed in include file")) if "@saved_cond_stack" ne "@cond_stack"; diff --git a/tests/Makefile.am b/tests/Makefile.am index 8c3f9216..284117a8 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -40,6 +40,7 @@ auxdir.test \ auxdir2.test \ backsl.test \ backsl2.test \ +backsl3.test \ badline.test \ badprog.test \ block.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index c6caa3f4..71994a3a 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -134,6 +134,7 @@ auxdir.test \ auxdir2.test \ backsl.test \ backsl2.test \ +backsl3.test \ badline.test \ badprog.test \ block.test \ diff --git a/tests/backsl3.test b/tests/backsl3.test new file mode 100755 index 00000000..bb465e49 --- /dev/null +++ b/tests/backsl3.test @@ -0,0 +1,35 @@ +#! /bin/sh +# Copyright (C) 2003 Free Software Foundation, Inc. +# +# This file is part of GNU Automake. +# +# GNU Automake is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# GNU Automake is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Automake; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +# Make sure we diagnose trailing backslash at the end of a file. +# Report from Akim Demaile + +. ./defs || exit 1 + +set -e + +cat > Makefile.am << 'END' +foo = \ +END + +$ACLOCAL +$AUTOMAKE 2>stderr && exit 1 +cat stderr +grep 'trailing backslash' stderr -- 2.43.5