aboutsummaryrefslogtreecommitdiff
path: root/src/algebra/strap/URAGG-.lsp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2010-04-30 14:53:30 +0000
committerdos-reis <gdr@axiomatics.org>2010-04-30 14:53:30 +0000
commitf0b6be21e20a76251afe2bc2ae92800fb267da0b (patch)
tree738bf6386eb25b036815808639ae1dd5e78d8cc9 /src/algebra/strap/URAGG-.lsp
parent95a8891a808572509f7449aa32022df42f8b7ab8 (diff)
downloadopen-axiom-f0b6be21e20a76251afe2bc2ae92800fb267da0b.tar.gz
* interp/macros.lisp (|check-subtype|): Return coerced value if can.
(|check-union|): Likewise. * interp/compiler.boot (coerceSuperset): Tidy. Generate %Retract instruction. * interp/g-opt.boot (optRetract): New.
Diffstat (limited to 'src/algebra/strap/URAGG-.lsp')
-rw-r--r--src/algebra/strap/URAGG-.lsp10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/algebra/strap/URAGG-.lsp b/src/algebra/strap/URAGG-.lsp
index 45a75b9c..f69e3773 100644
--- a/src/algebra/strap/URAGG-.lsp
+++ b/src/algebra/strap/URAGG-.lsp
@@ -435,7 +435,7 @@
(EXIT |x|)))))
(DEFUN |URAGG-;last;ANniA;22| (|x| |n| $)
- (PROG (|m| #0=#:G1497)
+ (PROG (|m|)
(RETURN
(SEQ (LETT |m| (SPADCALL |x| (|getShellEntry| $ 57))
|URAGG-;last;ANniA;22|)
@@ -444,8 +444,7 @@
('T
(SPADCALL
(SPADCALL |x|
- (PROG1 (LETT #0# (- |m| |n|)
- |URAGG-;last;ANniA;22|)
+ (LET ((#0=#:G1499 (- |m| |n|)))
(|check-subtype| (>= #0# 0)
'(|NonNegativeInteger|) #0#))
(|getShellEntry| $ 59))
@@ -574,15 +573,14 @@
(SPADCALL |u| |s| (|getShellEntry| $ 67)))
(DEFUN |URAGG-;split!;AIA;32| (|p| |n| $)
- (PROG (#0=#:G1523 |q|)
+ (PROG (|q|)
(RETURN
(SEQ (COND
((< |n| 1) (|error| "index out of range"))
('T
(SEQ (LETT |p|
(SPADCALL |p|
- (PROG1 (LETT #0# (- |n| 1)
- |URAGG-;split!;AIA;32|)
+ (LET ((#0=#:G1525 (- |n| 1)))
(|check-subtype| (>= #0# 0)
'(|NonNegativeInteger|) #0#))
(|getShellEntry| $ 59))