Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2021-03-19 Thread Panu Matilainen
This isn't moving anywhere, closing. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1409#issuecomment-802604852___ Rpm-maint

Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2021-03-19 Thread Panu Matilainen
Closed #1409. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/rpm-software-management/rpm/pull/1409#event-4480430884___ Rpm-maint mailing list

Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2020-10-23 Thread Panu Matilainen
Updated to preserve the scoped macro behavior, ie the example case now expands to `hello` again. Just wondering now whether all these macro tables actually make sense - with these semantics we could probably get by with just two tables for global and non-global macros. It's the argv stuff that

Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2020-10-23 Thread Panu Matilainen
Oh and FWIW, I've various other doubts and reservations about this implementation so there's a good chance that it'll end up trashed (or at least drastically revised) anyhow. If getting an actual definition and some testcases of how macro scoping is supposed to work comes out of it, that alone

Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2020-10-23 Thread Panu Matilainen
Right, I forgot that user-defined scoped macros follow different rules from automatic macros as it is. Which is of course undocumented behavior, like most of all this... What's implemented here is a strict local stack for parametric macros, so no, it no longer expands to `hello` unless you

Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2020-10-23 Thread Michael Schroeder
I just glanced over the pull request, so this might be wrong. But shouldn't you look in the lower levels as well in findEntry? I.e. if you have: ``` %foo() %bar %foo2() %define bar hello \ %foo ``` Does %foo2 still expand to `hello`? -- You are receiving this because you are subscribed to this

Re: [Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2020-10-22 Thread Panu Matilainen
FWIW, the macro argument argv needs similar treatment but I'm out of steam for the day... -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub:

[Rpm-maint] [rpm-software-management/rpm] Implement a real stack for parametric macro locals (#1409)

2020-10-22 Thread Panu Matilainen
Mixing up local stack and global data never was such a hot idea, as locals could get trapped between globals and not freed at appropriate times etc. This clears the semantics wrt that, fixing a long-standing expected failure in the test-suite. Another semantics change is that you can no