On 12/27/10 5:01 PM, Stefan Monnier wrote: >>> Actually, both Fcar and Fcdr can GC (by signalling an error which >>> triggers the debugger). >> But the debugger will not return. > > Oh, right, > Discussions like this worry me. What if the function is later changed to call something that can GC? What if it's used in some new context? If it's not utterly performance-critical code, isn't it better to be safe than sorry and GCPRO anyway? It's not as if it's an expensive operation. Premature optimization is the root of all evil, after all.