URL: <https://savannah.gnu.org/bugs/?68409>
Summary: $(call) doesn't undefine unspecified temporary
variables properly
Group: make
Submitter: geza
Submitted: Sat 30 May 2026 11:01:59 AM UTC
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: Bug
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Unlocked
Component Version: 4.4.1
Operating System: POSIX-Based
Fixed Release: None
Triage Status: None
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: Sat 30 May 2026 11:01:59 AM UTC By: Geza Herman <geza>
When $(call) is expanded inside a variable, make doesn't undefine unspecified
arguments properly.
I attached a simple Makefile. foo takes 2 arguments. If it is called
directly with one argument, $(origin 2) is correctly "undefined". But if foo
is called from bar, $(origin 2) reports "automatic". Note: $2's value is empty
(so it is not a leftover of bar's $2), but I think $(origin 2) should be
"undefined", just like when foo is called directly.
_______________________________________________________
File Attachments:
Name: Makefile Size: 194B
<https://file.savannah.gnu.org/file/Makefile?file_id=58666>
AGPL NOTICE
These attachments are served by Savane. You can download the corresponding
source code of Savane at
https://savannah.gnu.org/source/savane-c36938be85ff6c1b727bc7dd7fd30e48f9142870.tar.gz
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?68409>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
