Search
Thursday, 19th of November 2020, 20:50:00 UTC
21:07:04
phoe
(defmethod intialize-instance :after ((o foo) &key) (break))
21:07:55
phoe
IMO this is a good example of why it was a bad idea to remove the "implicitly defining a generic function" warning
21:08:08
phoe
the above doesn't break, doesn't warn, nothing; it just returns an instance of foo
21:11:05
specbot
https://bugs.launchpad.net/bugs/1818142
21:11:40
pfdietz
In the meantime, we shadowed defmethod to get the warning back.
21:23:41
phoe
by "shadowed", what do you mean?
21:26:20
pfdietz
Shadowed the symbol, so "DEFMETHOD" interns to our own macro that does the check then expands to CL:DEFMETHOD.
21:26:55
pfdietz
This means you need to shadowing-import that symbol into your package(s).
21:32:24
mfiano
Is there a way to disable the GC if I know what I'm doing? I'd like to do some cache profiling
21:37:12
no-defun-allowed
SB-SYS:WITHOUT-GCING?
21:37:30
no-defun-allowed
Er, no, that will screw up threads.
21:41:13
no-defun-allowed
I tried to (setf sb-ext:generation-bytes-consed-between-gcs) and (setf sb-ext:bytes-consed-between-gcs) to an absurdly high value to no avail.
21:44:59
no-defun-allowed
I also tried (setf sb-kernel:*gc-inhibit* t) but that also messes up threads (and the source for WITHOUT-GCING tells you that).
22:35:29
stassats
flip214: what's the original form?
22:36:22
stassats
and isn't it actually fixed?
22:39:34
stassats
or i may not have the right form
6:55:37
flip214
(defun wait-for... (... &key (timeout 30)) ... (sb-sys:with-deadline (:seconds timeout) ...))
8:12:14
Krystof
so, why did we take out the defmethod-with-no-defgeneric warning anyway?
8:12:58
Krystof
it operated at load-time, which was probably the wrong time. What if we wrote a compile-time equivalent?
8:27:38
flip214
hmmm, how did I get this? ; caught WARNING: The function NIL is called with odd number of keyword arguments.
8:28:45
flip214
ah, a symbol from another package that wasn't exported, and I clicked the compiler error away ;)
Friday, 20th of November 2020, 8:50:00 UTC