+2013-05-26 Paul Smith <psmith@gnu.org>
+
+ * job.c (new_job): Compare OUT to the beginning of the OUT
+ var/function, not IN. Fixes Savannah bug #39035.
+
2013-05-22 Paul Smith <psmith@gnu.org>
* main.c (switches[]): Order switches so simple flags all come first.
{
char openparen = *ref;
char closeparen = openparen == '(' ? ')' : '}';
+ char *outref;
int count;
char *p;
*out++ = *in++; /* Copy OPENPAREN. */
+ outref = out;
/* IN now points past the opening paren or brace.
Count parens or braces until it is matched. */
count = 0;
/* Discard any preceding whitespace that has
already been written to the output. */
- while (out > ref
+ while (out > outref
&& isblank ((unsigned char)out[-1]))
--out;
+2013-05-26 Paul Smith <psmith@gnu.org>
+
+ * scripts/misc/bs-nl: Test for Savannah bug #39035.
+
2013-05-22 Paul Smith <psmith@gnu.org>
* scripts/options/dash-n: Fix results after MAKEFLAGS fixes.
var:;@echo '|$(var)|'!,
'', "|he llo|");
+# Savannah #39035: handle whitespace in call
+run_make_test(q!
+f = echo $(1)
+t:; @$(call f,"a \
+ b"); \
+ $(call f,"a \
+ b")
+!,
+ '', "a b\na b\n");
+
+# Savannah #38945: handle backslash CRLF
+# We need our own makefile so we can set binmode
+my $m1 = get_tmpfile();
+open(MAKEFILE, "> $m1");
+binmode(MAKEFILE);
+print MAKEFILE "FOO = foo \\\r\nbar\nall: ; \@echo \$(FOO)\n";
+close(MAKEFILE);
+
+run_make_with_options($m1, '', get_logfile());
+compare_output("foo bar\n", get_logfile(1));
+
+
1;