Nikita Karetnikov <[email protected]> skribis: >> This is a macro-generating macro. In the body of the generated macro, >> above, there are 4 occurrences of ‘...’. But these ellipses have no >> meaning in the outer macro; they are just meaningful in the context of >> the generated macro, hence the error. > >> Instead, you should replace all 4 occurrences with (... ...). > >> Yes, it’s always surprising at first. ;-) > > Yep, could you add it to the manual? There is only a reference to this > book [1] which briefly discusses the topic.
Well, it’s specified in R[56]RS I believe, but yeah. > I'm attaching the patch that adds a 'define-diagnostic' macro. Can I > push it to 'master'? Looks good to me. Make sure to run ‘make clean && make’ before, to see if there’s anything that fails to build (you only need to do this because these are macros.) > I ran 'grep' to find things which use "warning" or "leave." I guess > it's possible to change other functions (the ones that use 'error' and > 'format'). But it will probably trigger a rebuild. So what should I > do? Everything in guix/build/* must be left as is: it’s not part of the UI, except perhaps for (guix build download). However, the rule is to only import (guix build ...) modules in (guix build ...) modules. So this looks fine as is. We’ll see later if there’s anything wrong with (guix build download) or something else. > Also, is it possible to move 'report-error' inside 'leave'? Didn’t you want to export it as well? But otherwise no. > Finally, I haven't tested each change. All tests pass and there are no > warnings. Is it good enough? Plus ‘make clean && make’. Please push if it passes that. Thanks! Ludo’.
