A NOTE has been added to this issue. ====================================================================== https://www.austingroupbugs.net/view.php?id=1471 ====================================================================== Reported By: joerg Assigned To: ====================================================================== Project: Issue 8 drafts Issue ID: 1471 Category: Shell and Utilities Type: Enhancement Request Severity: Editorial Priority: normal Status: New Name: Jörg Schilling Organization: User Reference: Section: make Page Number: 2888- Line Number: 97001- Final Accepted Text: ====================================================================== Date Submitted: 2021-05-16 12:15 UTC Last Modified: 2021-07-10 12:30 UTC ====================================================================== Summary: Add an orthogonal interface for immediate macro expansion definitions to make ======================================================================
---------------------------------------------------------------------- (0005403) joerg (reporter) - 2021-07-10 12:30 https://www.austingroupbugs.net/view.php?id=1471#c5403 ---------------------------------------------------------------------- Re: https://www.austingroupbugs.net/view.php?id=1471#c5393 Geoff, your test script is unfortunately not sufficient to investigate and understand the problem caused by the deviating behavior implemented in GNU make. This is because there are two deviations in GNU make compared to other make implementations and your script only tests for one of them. To test for the other deviation, you could use this script: printf 'A = immediate\nB := b\nB += $A\nA = delayed\nall:\n\techo '\''$(B)'\''\n' | $MAKE -s -f - smake prints: smake: WARNING: Nonportable ':=' assignment found for macro 'B' in line 2 col 4 of 'Standard in' b delayed bmake prints: b delayed and gmake prints: b immediate As you see, smake and bmake fully agree and the deviating behavior from gmake never should have made it into the standard. In special: If the gmake documentation would have clearly pointed to it's deviating behavior, I would have protested against https://www.austingroupbugs.net/view.php?id=330 When https://www.austingroupbugs.net/view.php?id=330 was discussed in the teleconference. During that teleconference, I was assuming, gmake was aligned with the behavior of other make implementations like smake and bmake. Note that the change in bmake regarding the expansion of := macros at use time (see your test script) has been introduced after 2015, which is years after https://www.austingroupbugs.net/view.php?id=330 was closed with a wrong decision. Also note that the tool people from netbsd yesterday clearly judged that the deviating gmake behavior for += tested with the script from this bugnote is seen as a bug by them. Issue History Date Modified Username Field Change ====================================================================== 2021-05-16 12:15 joerg New Issue 2021-05-16 12:15 joerg Name => Jörg Schilling 2021-05-16 12:15 joerg Section => make 2021-05-16 12:15 joerg Page Number => 2888- 2021-05-16 12:15 joerg Line Number => 97001- 2021-05-16 14:35 shware_systems Note Added: 0005356 2021-05-16 17:18 psmith Note Added: 0005357 2021-05-16 19:02 shware_systems Note Added: 0005358 2021-05-16 19:12 kre Note Added: 0005359 2021-05-16 19:49 shware_systems Note Added: 0005360 2021-05-16 21:26 joerg Note Added: 0005361 2021-05-16 21:27 joerg Note Edited: 0005361 2021-05-22 19:02 psmith Note Added: 0005363 2021-07-08 16:43 geoffclare Note Added: 0005393 2021-07-08 16:57 hvd Note Added: 0005394 2021-07-08 19:30 steffen Note Added: 0005395 2021-07-08 19:32 steffen Note Added: 0005396 2021-07-08 20:01 kre Note Added: 0005397 2021-07-08 20:21 steffen Note Added: 0005398 2021-07-08 20:34 steffen Note Added: 0005399 2021-07-08 21:15 kre Note Added: 0005400 2021-07-08 22:33 steffen Note Added: 0005401 2021-07-08 22:33 steffen Note Added: 0005402 2021-07-10 12:30 joerg Note Added: 0005403 ======================================================================