URL: <https://savannah.gnu.org/bugs/?63484>
Summary: make 4.4 incorrectly thinks target does not exist Project: make Submitter: pattop Submitted: Wed 07 Dec 2022 11:19:38 PM UTC Severity: 3 - Normal Item Group: Bug Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Component Version: 4.4 Operating System: None Fixed Release: None Triage Status: None _______________________________________________________ Follow-up Comments: ------------------------------------------------------- Date: Wed 07 Dec 2022 11:19:38 PM UTC By: Patrick Oppenlander <pattop> Here's a test case reduced from a much larger build system demonstrating a behavioural change between 4.3 and 4.4 which caught me by surprise: .SECONDARY: .PHONY: force -include test.foo %.foo: force touch -a $@ %.x: %.foo touch $@ test: test.x touch $@ *with 4.3* *%* ls Makefile *%* make touch -a test.foo touch -a test.foo touch test.x touch test *%* ls Makefile test test.foo test.x *%* make touch -a test.foo make: 'test' is up to date. *with 4.4* *%* ls Makefile *%* make touch -a test.foo touch -a test.foo touch test.x touch test *%* ls Makefile test test.foo test.x *%* make touch -a test.foo touch test.x touch test *with --trace* *%* ls Makefile test test.foo test.x *%* make --trace touch -a test.foo Makefile:7: update target 'test.x' due to: target does not exist touch test.x Makefile:9: update target 'test' due to: test.x touch test I've reported this a bug because: * test.x exists but make 4.4 says it doesn't * test.foo is older than test.x therefore test.x does not need to be updated _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?63484> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/