Re: clarifications about “10.8 Implicit Rule Searc h Algorithm.”
Dmitry <[email protected]> Mon, 20 Oct 2025 22:57:34 +0300
| Newsgroups | gmane.comp.gnu.make.general |
|---|---|
| Message-ID | <CAJViqFnh82s235i4utZuEccoJt0br2Gad76L+yKCYNEsnSgYug@mail.gmail.com> |
I've read =E2=80=9CChains of Implicit Rules=E2=80=9D, but unfortunately tha= t doesn=E2=80=99t help me. Maybe I=E2=80=99ve described my difficulty not very clearly. Let me try to explain it in more detail. > At that point make calls pattern_search recursively to find a rule to bui= ld 'aaa'. So now our new target is=E2=80=AF=E2=80=98aaa=E2=80=99, and we must start s= earching implicit rules from the beginning. We take the pattern rule=E2=80=AF=E2=80=98%.o=E2=80=AF:=E2=80=AFaaa=E2=80= =99=E2=80=AFand discard it not because of recursion, but because its target=E2=80=AF=E2=80=98%.o=E2=80=99=E2=80=AFdoe= sn=E2=80=99t match=E2=80=AF=E2=80=98aaa=E2=80=99. And the message =E2=80=9CAvoiding implicit rule recursion for rule '%.o:=E2= =80=AFaaa'=E2=80=9D doesn=E2=80=99t appear at all. If instead of=E2=80=AF=E2=80=98%.o=E2=80=AF:=E2=80=AFaaa=E2=80=99=E2=80=AFw= e have=E2=80=AF=E2=80=98%.o=E2=80=AF:=E2=80=AFaaa.o=E2=80=99, and we search= for rules for=E2=80=AF=E2=80=98aaa.o=E2=80=99, then in that case the recursion = message would make sense to me. Where am I missing the point? regards, Dmitry