[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gcl-devel] Auto-proclaiming
From: |
Camm Maguire |
Subject: |
[Gcl-devel] Auto-proclaiming |
Date: |
25 Mar 2006 12:42:55 -0500 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.2 |
Greetings! What would be the problem with auto proclaiming given the
folllowing current behavior? Redefining the function pushes the link
off of the fast link array and makes the call proceed via the slow arg
checking code, it appears.
COMPILER>(declaim (ftype (function (t) t) foo bar))
NIL
COMPILER>(defun foo (x) x)
FOO
COMPILER>(defun bar (x) (foo x))
BAR
COMPILER>(si::use-fast-links t)
NIL
COMPILER>(bar 1)
1
COMPILER>(compile 'bar)
;; Compiling /tmp/gazonk_29761_0.lsp.
;; End of Pass 1.
;; End of Pass 2.
;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3,
(Debug quality ignored)
;; Finished compiling /tmp/gazonk_29761_0.o.
Loading /tmp/gazonk_29761_0.o
start address -T 0x8c3e960 Finished loading /tmp/gazonk_29761_0.o
#<compiled-function BAR>
NIL
NIL
COMPILER>(bar 1)
1
COMPILER>(bar 1)
1
COMPILER>(compile 'foo)
;; Compiling /tmp/gazonk_29761_0.lsp.
;; End of Pass 1.
;; End of Pass 2.
;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3,
(Debug quality ignored)
;; Finished compiling /tmp/gazonk_29761_0.o.
Loading /tmp/gazonk_29761_0.o
start address -T 0x8a0c220 Finished loading /tmp/gazonk_29761_0.o
#<compiled-function FOO>
NIL
NIL
COMPILER>(bar 1)
1
COMPILER>(bar 1)
1
COMPILER>(defun foo (x y) y)
FOO
COMPILER>(bar 1)
Error in FOO [or a callee]: FOO [or a callee] requires more than one argument.
Fast links are on: do (si::use-fast-links nil) for debugging
Broken at CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER. Type :H for Help.
1 (Continue) Return to top level.
dbl:COMPILER>>1
Top level.
COMPILER>(declaim (ftype (function (t t) t) foo))
NIL
COMPILER>(compile 'foo)
;; Compiling /tmp/gazonk_29761_0.lsp.
; (DEFUN FOO ...) is being compiled.
;; Warning: The variable X is not used.
;; End of Pass 1.
;; End of Pass 2.
;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3,
(Debug quality ignored)
;; Finished compiling /tmp/gazonk_29761_0.o.
Loading /tmp/gazonk_29761_0.o
start address -T 0x8c3e948 Finished loading /tmp/gazonk_29761_0.o
#<compiled-function FOO>
NIL
NIL
COMPILER>(bar 1)
Error in EVAL [or a callee]: Arg or result mismatch in call to FOO
Fast links are on: do (si::use-fast-links nil) for debugging
Broken at CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER. Type :H for Help.
1 (Continue) Return to top level.
dbl:COMPILER>>1
Top level.
COMPILER>1
1
COMPILER>(bar 1)
Error in EVAL [or a callee]: Arg or result mismatch in call to FOO
Fast links are on: do (si::use-fast-links nil) for debugging
Broken at CONDITIONS::CLCS-UNIVERSAL-ERROR-HANDLER. Type :H for Help.
1 (Continue) Return to top level.
dbl:COMPILER>>
Take care,
--
Camm Maguire address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gcl-devel] Auto-proclaiming,
Camm Maguire <=