Faré wrote:
: rpg
: fare
: rpg
....
You're discussing the behavior of a file that isn't checked in;
No, this file is checked in, and you should see these results if you run the test suite after pulling master from cl.net.
OK, I might have been looking at the wrong place. I see that test now, and tweaked it to make it more portable. This test (only) checks cases where deferred-warnings are enabled.
does it have interesting handler-bind's?
No, it's just Ilya's example.
It's not: you're enabling deferred-warnings. Ilya wasn't. This explains the different in behavior.
Argh. I misinterpreted the name and didn't read carefully enough. I was thinking of deferred-warnings as a thing that happens, rather than as an ASDF feature. My bad. I should copy this test out to a disabled-deferred-warnings.script.
This suggested some conjectures:
- AFAICT, using ASDF's deferred-warnings would have required first
breaking the logic that ACL already provides, and then recreating it in ASDF.
No. It doesn't require anything but suitable defaults. It might "just" be that check-deferred-warnings needs be made more clever, and/or might need to have its own separate variants of *compile-file-warnings-behaviour* and *compile-file-failure-behaviour*, and maybe also *compile-check*.
This still means "take code that works, break it, and then add more code to fix the breakage."
No. Any code that the deferred-warnings declares broken is indeed broken code, though the bugs that go unchecked without deferred-warnings might happen to not be seen by users because it's in code not reached at runtime, or executed correctly on the implementation used by the user, though unportable.
Hmmm... I will check again. In the past, what was happening for me on ACL was that I was seeing a large number of bogus UNDEFINED-FUNCTION warnings. But maybe I'm confusing ENABLE-DEFERRED-WARNINGS with an earlier version where we moved the W-C-U's around. I will recheck against a large system with a lot of forward-referenced functions.
More philosophical musings I'll have to defer....
cheers, r