Search
15:37:08
stassats
compile-or-load-defgeneric clears the GF type
15:37:23
stassats
that's why defmethod self calling doesn't get any mismatch warnings
15:40:18
stassats
writing #<BUILT-IN-CLASSOID FUNCTION (read-only)>, there
15:40:29
stassats
but after evaluating it it's actually :generic-function
15:40:36
stassats
using :generic-function does give a warning
15:44:23
stassats
fine, but doing (defmethod whatever (x) (whatever x 32)) for the first time doesn't warn
16:07:11
specbot
https://bugs.launchpad.net/bugs/1811251
19:01:06
stassats
pfdietz: good news: it's not my regression, bad news: it's not my regression
19:07:58
stassats
but it appears to be newish
19:17:52
stassats
i'm writing a tool for inspecting IR1, so i'll delay investigating until then
19:18:00
stassats
as it should make things simpler
23:12:25
stassats
ugh, i'm deep into the weeds with defgeneric ftype specifiers
23:12:57
stassats
it tries to be really smart and ends up being dumb
23:13:13
stassats
so i have to unravel all the smartness and keep it consistently dumb
23:33:21
stassats
how come (progn (defgeneric foo (&key)) (defmethod foo (&rest rest) test) (foo :bar 10)) is an error?
23:34:18
stassats
yet if the gf is defined by DEFMETHOD it's not
23:35:32
stassats
(progn (defmethod foo ((x list) &rest bar) bar) (defmethod foo ((x integer) &key bar) bar) (foo nil :bar 20))
23:37:00
stassats
ok, i don't need to worry about that for compile time warnings, as i'm simply disabling keyword checking there
23:37:31
stassats
because new methods can add new keyword arguments
23:37:43
stassats
after compilation is finished
0:04:22
stassats
ugh, this is PCL and i'm close to just giving up
0:04:38
stassats
although it's not the most convoluted part
0:10:37
stassats
and i gave up, who knows what it wants to do
0:11:02
stassats
i know what i want to do, but it'll probably break something
0:14:02
stassats
the gf created by defmethod has :no-lambda-list in its arg info, then gf-lambda-list gets the lambda-list of the last method
0:14:07
stassats
what happens if it's removed?
0:22:42
stassats
maybe i can just fix the original problem and not try to make sense of anything else