make/src
Paul Smith bf7f690202 Directly handle $\ line endings
Previously we used the fact that this line ending expanded to "$ "
which would then expand to the empty string.  This has problems if
you enable warnings for undefined variables, so directly implement
this special (but documented) trick in the GNU Make parser.

As a side-effect this also removes all previous whitespace when
in GNU Make mode (not in POSIX mode) just as it would without "$".

* src/misc.c (collapse_continuations): Check for "$\" and remove it.
* tests/scripts/variables/flavors: Add regression tests including
with previous whitespace, and escaped/unescaped "$"
2023-02-26 17:30:15 -05:00
..
w32 Clean up some preprocessor operations 2023-01-16 13:01:09 -05:00
ar.c Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
arscan.c Clean up some preprocessor operations 2023-01-16 13:01:09 -05:00
commands.c Clean up some preprocessor operations 2023-01-16 13:01:09 -05:00
commands.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
config.h-vms Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
config.h.W32 Rename WINDOWS32 macro to MK_OS_W32 2023-01-15 18:27:13 -05:00
configh.dos Use MK_OS_DOS macro instead of __MSDOS__ 2023-01-16 00:03:13 -05:00
debug.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
default.c Clean up some preprocessor operations 2023-01-16 13:01:09 -05:00
dep.h Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
dir.c Clean up some preprocessor operations 2023-01-16 13:01:09 -05:00
expand.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
file.c Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
filedef.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
function.c Use MK_OS_DOS macro instead of __MSDOS__ 2023-01-16 00:03:13 -05:00
getopt.c Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
getopt.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
getopt1.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
gettext.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
gmk-default.scm Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
gnumake.h Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
guile.c Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
hash.c * src/hash.c (jhash_string): Help the compiler optimize the hash 2022-11-13 10:38:50 -05:00
hash.h Rename WINDOWS32 macro to MK_OS_W32 2023-01-15 18:27:13 -05:00
implicit.c Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
job.c Use MK_OS_OS2 macro instead of __EMX__ 2023-01-16 00:24:13 -05:00
job.h Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
load.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
loadapi.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
main.c * src/main.c (define_makefiles): Simplify by using variable_buffer 2023-02-26 17:15:56 -05:00
makeint.h Clean up some preprocessor operations 2023-01-16 13:01:09 -05:00
misc.c Directly handle $\ line endings 2023-02-26 17:30:15 -05:00
mkconfig.h.in Update the copyright year on all files 2023-01-01 10:06:01 -05:00
mkcustom.h Rename WINDOWS32 macro to MK_OS_W32 2023-01-15 18:27:13 -05:00
os.h Use MK_OS_DOS macro instead of __MSDOS__ 2023-01-16 00:03:13 -05:00
output.c Rename WINDOWS32 macro to MK_OS_W32 2023-01-15 18:27:13 -05:00
output.h Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
posixos.c Use MK_OS_OS2 macro instead of __EMX__ 2023-01-16 00:24:13 -05:00
read.c Use MK_OS_OS2 macro instead of __EMX__ 2023-01-16 00:24:13 -05:00
remake.c Use MK_OS_DOS macro instead of __MSDOS__ 2023-01-16 00:03:13 -05:00
remote-cstms.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
remote-stub.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
rule.c Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
rule.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
shuffle.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
shuffle.h Update URLs to use https rather than http 2022-10-18 14:37:47 -04:00
signame.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
strcache.c Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
variable.c Use MK_OS_OS2 macro instead of __EMX__ 2023-01-16 00:24:13 -05:00
variable.h [SV 63667] In .POSIX, use shell flags -c when ignoring errors 2023-01-28 13:04:47 -05:00
version.c Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
vms_exit.c Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
vms_export_symbol.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
vms_progname.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
vmsdir.h Update the copyright year on all files 2023-01-01 10:06:01 -05:00
vmsfunctions.c Update the copyright year on all files 2023-01-01 10:06:01 -05:00
vmsify.c Rename VMS macro to MK_OS_VMS 2023-01-15 18:04:36 -05:00
vmsjobs.c Convert references from "GNU make" to "GNU Make" 2023-01-01 17:05:12 -05:00
vpath.c Use MK_OS_OS2 macro instead of __EMX__ 2023-01-16 00:24:13 -05:00