Re: [cmucl-commit] CMUCL commit: src/code (package.lisp)
Stas Boukarev <[email protected]>
| Newsgroups | gmane.lisp.cmucl.devel |
|---|---|
| Message-ID | <[email protected]> |
Raymond Toy <[email protected]> writes: > On 12/26/10 9:40 AM, Stas Boukarev wrote: >> Madhu <[email protected]> writes: >> >>> |From: Stas Boukarev <[email protected]> >>> >>> |> * (load (compile-file "test.l")) >>> |It breaks non-standard code, that is right. >>> >>> The point of my example was to show that it breaks more than just >>> non-stanadard code. It would be nice to keep misguided SBCL patches >>> off the CMUCL codebase. >> The behaviour you expect from the code you showed is non-standard. And >> it behaves the same way in every implementation, except for CMUCL and SBCL. >> > I'm getting confused now. (I would claim too much holiday cheer, but I > didn't really drink anything much.) > > FIND-SYMBOL (before uninterning) says BAR-SYMBOL is an external symbol > and not inherited. An external symbol is present in the package, > according to the phrasing in the clhs entry for find-symbol. > > I do see that ccl and clisp fail the test. cmucl passes. The problem is that the symbol is uninterned twice, and the second time it's uninterned it's passing a symbol with no home-package to unintern, which it surely can't find in that package anymore. A better test-case: (progn (intern "SYM") (unintern (print 'sym)) (intern "SYM") (unintern (print 'sym)) (find-symbol "SYM")) => SYM #:SYM SYM :INTERNAL -- With Best Regards, Stas. _______________________________________________ cmucl-imp mailing list [email protected] http://lists.zs64.net/mailman/listinfo/cmucl-imp