diff options
author | Paul Smith <psmith@gnu.org> | 2012-03-04 16:53:50 +0000 |
---|---|---|
committer | Paul Smith <psmith@gnu.org> | 2012-03-04 16:53:50 +0000 |
commit | cf1c79c9a331896d5bc2e68a1ea8206105a53eaa (patch) | |
tree | a7f622393478929ecbf44027d94e5ee576ae637b /tests | |
parent | 76827d7c10c2708a3147171b02bfe3981492a38f (diff) | |
download | gunmake-cf1c79c9a331896d5bc2e68a1ea8206105a53eaa.tar.gz |
Improve handling for escaped colons in prerequisite lists.
Fixes Savannah bug #12126 and bug #16545
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ChangeLog | 6 | ||||
-rw-r--r-- | tests/scripts/features/escape | 8 | ||||
-rw-r--r-- | tests/scripts/features/se_explicit | 10 |
3 files changed, 23 insertions, 1 deletions
diff --git a/tests/ChangeLog b/tests/ChangeLog index 9d98731..78bd4ca 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,5 +1,11 @@ 2012-03-04 Paul Smith <psmith@gnu.org> + * scripts/features/se_explicit: Test $(x:%=%) format in secondary + expansion prerequisite lists. See Savannah bug #16545. + + * scripts/features/escape: Test escaped ":" in prerequisite lists. + See Savannah bug #12126. + * scripts/variables/private: Test appending private variables in pattern-specific target rules. See Savannah bug #35468. diff --git a/tests/scripts/features/escape b/tests/scripts/features/escape index 36bab18..0d4427e 100644 --- a/tests/scripts/features/escape +++ b/tests/scripts/features/escape @@ -54,5 +54,13 @@ run_make_test(undef, 'sharp', 'foo#bar.ext = (foo#bar.ext)'); +# Test escaped colons in prerequisites +# Quoting of backslashes in q!! is kind of messy. +run_make_test(q! +foo: foo\\:bar foo\\\\\\:bar foo\\\\\\\\\\:bar +foo foo\\:bar foo\\\\\\:bar foo\\\\\\\\\\:bar: ; @echo '$@' +!, + '', "foo:bar\nfoo\\:bar\nfoo\\\\:bar\nfoo\n"); + # This tells the test driver that the perl test script executed properly. 1; diff --git a/tests/scripts/features/se_explicit b/tests/scripts/features/se_explicit index f942a1c..c3cade4 100644 --- a/tests/scripts/features/se_explicit +++ b/tests/scripts/features/se_explicit @@ -152,5 +152,13 @@ a%l: q1x $$+ q2x ; @echo '$+' '', "q1x bar bar q2x bar bar\n"); -# This tells the test driver that the perl test script executed properly. +# Allow patsubst shorthand in second expansion context. +# Requires the colon to be quoted. Savannah bug #16545 +run_make_test(q! +.PHONY: foo.bar +.SECONDEXPANSION: +foo: $$(@\\:%=%.bar); @echo '$^' +!, + '', "foo.bar\n"); + 1; |