commit 59757135d2aee78dfdbe64a784acc24f2f6594a9
parent 77003899befd50c84876da7a156ba607eafc13cb
Author: Alexander Burger <abu@software-lab.de>
Date: Sat, 8 Dec 2012 08:38:07 +0100
Join multiple namespaces with 'symbols'
Diffstat:
10 files changed, 298 insertions(+), 161 deletions(-)
diff --git a/CHANGES b/CHANGES
@@ -1,4 +1,5 @@
* DDmmm13 picoLisp-3.1.2
+ Join multiple namespaces with 'symbols'
* 30nov12 picoLisp-3.1.1
Emacs-style editing with 'em'
diff --git a/doc/refS.html b/doc/refS.html
@@ -953,14 +953,16 @@ href="refE.html#ext?">ext?</a></code>.
<dt><a name="symbols"><code>(symbols) -> sym</code></a>
<dt><code>(symbols 'sym1) -> sym2</code>
-<dt><code>(symbols 'sym1 'sym2) -> sym3</code>
+<dt><code>(symbols 'sym1 'sym ..) -> sym2</code>
<dd>(64-bit version only) Creates and manages namespaces of internal symbols: In
the first form, the current namespace is returned. In the second form, the
current namespace is set to <code>sym1</code>, and the previous namespace
<code>sym2</code> is returned. In the third form, <code>sym1</code> is assigned
-a <code><a href="refB.html#balance">balance</a></code>d copy of an existing
-namespace <code>sym2</code> and becomes the new current namespace, returning the
-previous namespace <code>sym3</code>. See also <code><a
+a <code><a href="refB.html#balance">balance</a></code>d copy of the existing
+namespace(s) <code>sym</code>, and becomes the new current namespace, returning
+the previous namespace <code>sym2</code>. If in the third form more than one
+<code>sym</code> argument is given, possibly conflicting symbols in later
+namespaces are not interned into <code>sym2</code>. See also <code><a
href="refP.html#pico">pico</a></code>, <code><a
href="refL.html#local">local</a></code>, <code><a
href="refI.html#import">import</a></code> and <code><a
diff --git a/ersatz/fun.src b/ersatz/fun.src
@@ -1,4 +1,4 @@
-# 15nov12abu
+# 08dec12abu
# (c) Software Lab. Alexander Burger
# Ersatz PicoLisp Functions
@@ -1673,15 +1673,18 @@ all ()
# (symbols) -> sym
# (symbols 'sym1) -> sym2
-# (symbols 'sym1 'sym2) -> sym3
-symbols (s t)
+# (symbols 'sym1 'sym ..) -> sym2
+symbols (x s t)
if (ex.Cdr instanceof Cell) {
s = (Symbol)ex.Cdr.Car.eval();
- if (ex.Cdr.Cdr instanceof Cell) {
- t = (Symbol)ex.Cdr.Cdr.Car.eval();
- if (!(t.Car instanceof Symbol) || !(((Symbol)t.Car).Obj instanceof Namespace))
- symNsError(ex, t);
- s.Car = new Symbol(((Namespace)(((Symbol)t.Car).Obj)).clone());
+ if ((x = ex.Cdr.Cdr) instanceof Cell) {
+ s.Car = new Symbol(new Namespace());
+ do {
+ t = (Symbol)x.Car.eval();
+ if (!(t.Car instanceof Symbol) || !(((Symbol)t.Car).Obj instanceof Namespace))
+ symNsError(ex, t);
+ ((Namespace)(((Symbol)t.Car).Obj)).copy((Namespace)(((Symbol)s.Car).Obj));
+ } while ((x = x.Cdr) instanceof Cell);
}
else if (!(s.Car instanceof Symbol) || !(((Symbol)s.Car).Obj instanceof Namespace))
symNsError(ex, s);
diff --git a/ersatz/picolisp.jar b/ersatz/picolisp.jar
Binary files differ.
diff --git a/ersatz/sys.src b/ersatz/sys.src
@@ -1,4 +1,4 @@
-// 09nov12abu
+// 08dec12abu
// (c) Software Lab. Alexander Burger
import java.util.*;
@@ -1795,7 +1795,15 @@ public class PicoLisp {
}
}
- final static class Namespace extends HashMap<String,Symbol> {}
+ final static class Namespace extends HashMap<String,Symbol> {
+ final void copy(Namespace table) {
+ for (Iterator<Symbol> it = values().iterator(); it.hasNext();) {
+ Symbol sym = it.next();
+ if (table.get(sym.Name) == null)
+ table.put(sym.Name, sym);
+ }
+ }
+ }
static abstract class Any {
Any Car, Cdr;
diff --git a/lib/map b/lib/map
@@ -8,17 +8,17 @@ $ (2967 . "@src64/flow.l")
- (2209 . "@src64/big.l")
-> (3916 . "@src64/subr.l")
/ (2513 . "@src64/big.l")
-: (3051 . "@src64/sym.l")
-:: (3075 . "@src64/sym.l")
-; (2970 . "@src64/sym.l")
+: (3060 . "@src64/sym.l")
+:: (3084 . "@src64/sym.l")
+; (2979 . "@src64/sym.l")
< (2207 . "@src64/subr.l")
<= (2237 . "@src64/subr.l")
<> (2144 . "@src64/subr.l")
= (2115 . "@src64/subr.l")
=0 (2173 . "@src64/subr.l")
-=: (2999 . "@src64/sym.l")
+=: (3008 . "@src64/sym.l")
== (2059 . "@src64/subr.l")
-==== (1090 . "@src64/sym.l")
+==== (1099 . "@src64/sym.l")
=T (2181 . "@src64/subr.l")
> (2267 . "@src64/subr.l")
>= (2297 . "@src64/subr.l")
@@ -44,7 +44,7 @@ bind (1362 . "@src64/flow.l")
bit? (2748 . "@src64/big.l")
bool (1724 . "@src64/flow.l")
box (828 . "@src64/flow.l")
-box? (1122 . "@src64/sym.l")
+box? (1131 . "@src64/sym.l")
by (1669 . "@src64/apply.l")
bye (3444 . "@src64/flow.l")
caaaar (271 . "@src64/subr.l")
@@ -83,7 +83,7 @@ cddr (79 . "@src64/subr.l")
cdr (17 . "@src64/subr.l")
chain (1141 . "@src64/subr.l")
char (3461 . "@src64/io.l")
-chop (1219 . "@src64/sym.l")
+chop (1228 . "@src64/sym.l")
circ (816 . "@src64/subr.l")
circ? (2402 . "@src64/subr.l")
clip (1799 . "@src64/subr.l")
@@ -100,14 +100,14 @@ cons (747 . "@src64/subr.l")
copy (1225 . "@src64/subr.l")
ctl (4265 . "@src64/io.l")
ctty (2878 . "@src64/main.l")
-cut (1922 . "@src64/sym.l")
+cut (1931 . "@src64/sym.l")
date (2592 . "@src64/main.l")
dbck (2113 . "@src64/db.l")
de (532 . "@src64/flow.l")
dec (2323 . "@src64/big.l")
def (448 . "@src64/flow.l")
-default (1786 . "@src64/sym.l")
-del (1977 . "@src64/sym.l")
+default (1795 . "@src64/sym.l")
+del (1986 . "@src64/sym.l")
delete (1401 . "@src64/subr.l")
delq (1452 . "@src64/subr.l")
diff (2589 . "@src64/subr.l")
@@ -123,11 +123,11 @@ err (4245 . "@src64/io.l")
errno (1480 . "@src64/main.l")
eval (175 . "@src64/flow.l")
ext (5157 . "@src64/io.l")
-ext? (1157 . "@src64/sym.l")
-extern (1023 . "@src64/sym.l")
+ext? (1166 . "@src64/sym.l")
+extern (1032 . "@src64/sym.l")
extra (1269 . "@src64/flow.l")
extract (1218 . "@src64/apply.l")
-fifo (2088 . "@src64/sym.l")
+fifo (2097 . "@src64/sym.l")
file (2960 . "@src64/main.l")
fill (3243 . "@src64/subr.l")
filter (1161 . "@src64/apply.l")
@@ -138,7 +138,7 @@ fish (1613 . "@src64/apply.l")
flg? (2445 . "@src64/subr.l")
flip (1699 . "@src64/subr.l")
flush (5132 . "@src64/io.l")
-fold (3512 . "@src64/sym.l")
+fold (3521 . "@src64/sym.l")
for (2230 . "@src64/flow.l")
fork (3270 . "@src64/flow.l")
format (2089 . "@src64/big.l")
@@ -148,10 +148,10 @@ full (1075 . "@src64/subr.l")
fun? (750 . "@src64/sym.l")
gc (435 . "@src64/gc.l")
ge0 (2707 . "@src64/big.l")
-get (2894 . "@src64/sym.l")
+get (2903 . "@src64/sym.l")
getd (758 . "@src64/sym.l")
-getl (3195 . "@src64/sym.l")
-glue (1360 . "@src64/sym.l")
+getl (3204 . "@src64/sym.l")
+glue (1369 . "@src64/sym.l")
gt0 (2718 . "@src64/big.l")
hash (2976 . "@src64/big.l")
head (1820 . "@src64/subr.l")
@@ -159,7 +159,7 @@ heap (519 . "@src64/main.l")
hear (3242 . "@src64/io.l")
host (190 . "@src64/net.l")
id (1028 . "@src64/db.l")
-idx (2162 . "@src64/sym.l")
+idx (2171 . "@src64/sym.l")
if (1805 . "@src64/flow.l")
if2 (1824 . "@src64/flow.l")
ifn (1865 . "@src64/flow.l")
@@ -167,7 +167,7 @@ in (4205 . "@src64/io.l")
inc (2256 . "@src64/big.l")
index (2637 . "@src64/subr.l")
info (2915 . "@src64/main.l")
-intern (998 . "@src64/sym.l")
+intern (1007 . "@src64/sym.l")
ipid (3215 . "@src64/flow.l")
isa (967 . "@src64/flow.l")
job (1429 . "@src64/flow.l")
@@ -190,11 +190,11 @@ lit (150 . "@src64/flow.l")
load (4182 . "@src64/io.l")
lock (1185 . "@src64/db.l")
loop (2173 . "@src64/flow.l")
-low? (3378 . "@src64/sym.l")
-lowc (3408 . "@src64/sym.l")
+low? (3387 . "@src64/sym.l")
+lowc (3417 . "@src64/sym.l")
lst? (2415 . "@src64/subr.l")
lt0 (2682 . "@src64/big.l")
-lup (2351 . "@src64/sym.l")
+lup (2360 . "@src64/sym.l")
made (1107 . "@src64/subr.l")
make (1088 . "@src64/subr.l")
map (849 . "@src64/apply.l")
@@ -210,7 +210,7 @@ max (2327 . "@src64/subr.l")
maxi (1511 . "@src64/apply.l")
member (2455 . "@src64/subr.l")
memq (2477 . "@src64/subr.l")
-meta (3298 . "@src64/sym.l")
+meta (3307 . "@src64/sym.l")
meth (1095 . "@src64/flow.l")
method (1059 . "@src64/flow.l")
min (2356 . "@src64/subr.l")
@@ -232,17 +232,17 @@ nor (1680 . "@src64/flow.l")
not (1732 . "@src64/flow.l")
nth (685 . "@src64/subr.l")
num? (2426 . "@src64/subr.l")
-off (1723 . "@src64/sym.l")
+off (1732 . "@src64/sym.l")
offset (2677 . "@src64/subr.l")
-on (1708 . "@src64/sym.l")
-onOff (1738 . "@src64/sym.l")
-one (1771 . "@src64/sym.l")
+on (1717 . "@src64/sym.l")
+onOff (1747 . "@src64/sym.l")
+one (1780 . "@src64/sym.l")
open (4349 . "@src64/io.l")
opid (3231 . "@src64/flow.l")
opt (3204 . "@src64/main.l")
or (1640 . "@src64/flow.l")
out (4225 . "@src64/io.l")
-pack (1270 . "@src64/sym.l")
+pack (1279 . "@src64/sym.l")
pair (2394 . "@src64/subr.l")
pass (754 . "@src64/apply.l")
pat? (736 . "@src64/sym.l")
@@ -252,10 +252,10 @@ pick (1369 . "@src64/apply.l")
pipe (4286 . "@src64/io.l")
poll (3334 . "@src64/io.l")
pool (651 . "@src64/db.l")
-pop (1898 . "@src64/sym.l")
+pop (1907 . "@src64/sym.l")
port (5 . "@src64/net.l")
pr (5240 . "@src64/io.l")
-pre? (1536 . "@src64/sym.l")
+pre? (1545 . "@src64/sym.l")
prin (5056 . "@src64/io.l")
prinl (5070 . "@src64/io.l")
print (5096 . "@src64/io.l")
@@ -265,15 +265,15 @@ prior (2713 . "@src64/subr.l")
prog (1760 . "@src64/flow.l")
prog1 (1768 . "@src64/flow.l")
prog2 (1785 . "@src64/flow.l")
-prop (2925 . "@src64/sym.l")
+prop (2934 . "@src64/sym.l")
protect (509 . "@src64/main.l")
prove (3530 . "@src64/subr.l")
-push (1813 . "@src64/sym.l")
-push1 (1849 . "@src64/sym.l")
-put (2835 . "@src64/sym.l")
-putl (3113 . "@src64/sym.l")
+push (1822 . "@src64/sym.l")
+push1 (1858 . "@src64/sym.l")
+put (2844 . "@src64/sym.l")
+putl (3122 . "@src64/sym.l")
pwd (2842 . "@src64/main.l")
-queue (2045 . "@src64/sym.l")
+queue (2054 . "@src64/sym.l")
quit (1190 . "@src64/main.l")
quote (134 . "@src64/flow.l")
rand (3003 . "@src64/big.l")
@@ -294,8 +294,8 @@ seed (2961 . "@src64/big.l")
seek (1275 . "@src64/apply.l")
send (1134 . "@src64/flow.l")
seq (1084 . "@src64/db.l")
-set (1607 . "@src64/sym.l")
-setq (1640 . "@src64/sym.l")
+set (1616 . "@src64/sym.l")
+setq (1649 . "@src64/sym.l")
sigio (489 . "@src64/main.l")
size (2809 . "@src64/subr.l")
skip (3515 . "@src64/io.l")
@@ -307,10 +307,10 @@ stack (548 . "@src64/main.l")
state (2009 . "@src64/flow.l")
stem (1989 . "@src64/subr.l")
str (4033 . "@src64/io.l")
-str? (1136 . "@src64/sym.l")
+str? (1145 . "@src64/sym.l")
strip (1576 . "@src64/subr.l")
struct (1940 . "@src64/main.l")
-sub? (1569 . "@src64/sym.l")
+sub? (1578 . "@src64/sym.l")
sum (1460 . "@src64/apply.l")
super (1225 . "@src64/flow.l")
sym (4019 . "@src64/io.l")
@@ -321,12 +321,12 @@ sys (3067 . "@src64/flow.l")
t (1751 . "@src64/flow.l")
tail (1911 . "@src64/subr.l")
tell (3274 . "@src64/io.l")
-text (1398 . "@src64/sym.l")
+text (1407 . "@src64/sym.l")
throw (2493 . "@src64/flow.l")
tick (3183 . "@src64/flow.l")
till (3624 . "@src64/io.l")
time (2725 . "@src64/main.l")
-touch (1172 . "@src64/sym.l")
+touch (1181 . "@src64/sym.l")
trail (698 . "@src64/main.l")
trim (1759 . "@src64/subr.l")
try (1177 . "@src64/flow.l")
@@ -336,23 +336,23 @@ unify (3938 . "@src64/subr.l")
unless (1901 . "@src64/flow.l")
until (2085 . "@src64/flow.l")
up (766 . "@src64/main.l")
-upp? (3393 . "@src64/sym.l")
-uppc (3460 . "@src64/sym.l")
+upp? (3402 . "@src64/sym.l")
+uppc (3469 . "@src64/sym.l")
use (1573 . "@src64/flow.l")
usec (2830 . "@src64/main.l")
-val (1588 . "@src64/sym.l")
+val (1597 . "@src64/sym.l")
version (3218 . "@src64/main.l")
wait (3164 . "@src64/io.l")
when (1884 . "@src64/flow.l")
while (2061 . "@src64/flow.l")
-wipe (3253 . "@src64/sym.l")
+wipe (3262 . "@src64/sym.l")
with (1332 . "@src64/flow.l")
wr (5257 . "@src64/io.l")
-xchg (1663 . "@src64/sym.l")
+xchg (1672 . "@src64/sym.l")
xor (1701 . "@src64/flow.l")
x| (2887 . "@src64/big.l")
yield (2720 . "@src64/flow.l")
yoke (1196 . "@src64/subr.l")
-zap (1186 . "@src64/sym.l")
-zero (1756 . "@src64/sym.l")
+zap (1195 . "@src64/sym.l")
+zero (1765 . "@src64/sym.l")
| (2847 . "@src64/big.l")
diff --git a/src/vers.h b/src/vers.h
@@ -1 +1 @@
-static byte Version[4] = {3,1,1,1};
+static byte Version[4] = {3,1,1,2};
diff --git a/src64/sym.l b/src64/sym.l
@@ -1,4 +1,4 @@
-# 07jun12abu
+# 07dec12abu
# (c) Software Lab. Alexander Burger
### Compare long names ###
@@ -938,24 +938,25 @@
# (symbols) -> sym
# (symbols 'sym1) -> sym2
-# (symbols 'sym1 'sym2) -> sym3
+# (symbols 'sym1 'sym ..) -> sym2
(code 'doSymbols 2)
push X
push Y
+ push Z
ld X E
- ld Y (E CDR) # Y on args
- atom Y # Any?
+ ld Z (E CDR) # Z on args
+ atom Z # Any?
if nz # No
ld E (EnvIntern) # Return current symbol namespace
else
- ld E (Y) # Eval first
+ ld E (Z) # Eval first
eval
num E # Need symbol
jnz symErrEX
sym E
jz symErrEX
- ld Y (Y CDR) # Second arg?
- atom Y # Any?
+ ld Z (Z CDR) # Second arg
+ atom Z # Any?
if nz # No
atom (E) # Value must be a pair
jnz symNsErrEX
@@ -963,33 +964,41 @@
call checkVarEX
link
push E # <L III> Save new symbol namespace
- ld E (Y)
- eval+ # Eval source symbol namespace
- push E # <L II> Source
+ push Nil # <L II> Space for value
+ push Nil # <L I> and source
link
- num E # Need symbol
- jnz symErrEX
- sym E
- jz symErrEX
- ld C (E) # Get source
- atom C # Must be a pair
- jnz symNsErrEX
- ld X (C) # Source short names
call cons_Y # Create namespace cell
ld (Y) Nil # Initialize
ld (Y CDR) Nil
- tuck Y # <L I> New value
- link
- call balanceXY # Balanced copy of short names
- ld X (((L II)) CDR) # Source long names
- call balanceXY # Balanced copy of long names
- ld C (L I) # Get value
+ ld (L II) Y # New value
+ do
+ ld E (Z)
+ eval # Eval next source symbol namespace
+ ld (L I) E # Save source
+ num E # Need symbol
+ jnz symErrEX
+ sym E
+ jz symErrEX
+ ld C (E) # Get source value
+ atom C # Must be a pair
+ jnz symNsErrEX
+ push X
+ ld X (C) # Source short names
+ call balanceXY # Balanced copy of short names
+ ld X (((L I)) CDR) # Source long names
+ call balanceXY # Balanced copy of long names
+ pop X
+ ld Z (Z CDR) # Next arg
+ atom Z # Any?
+ until nz # No
+ ld C (L II) # Get value
ld E (L III) # And new symbol namespace
call redefineCE # Redefine
drop
end
xchg (EnvIntern) E # Set new symbol namespace, return old
end
+ pop Z
pop Y
pop X
ret
diff --git a/src64/tags b/src64/tags
@@ -48,6 +48,120 @@
CHAR_LETTER63,1499
CHAR_DIGIT64,1520
+sys/x86-64.linux.defs.l,1959
+ENOENT5,59
+EINTR6,108
+EBADF7,155
+EAGAIN8,194
+EACCES9,227
+EPIPE10,268
+ECONNRESET11,303
+O_RDONLY14,365
+O_WRONLY15,382
+O_RDWR16,399
+O_CREAT17,414
+O_EXCL18,431
+O_TRUNC19,448
+O_APPEND20,466
+F_GETFD21,486
+F_SETFD22,502
+FD_CLOEXEC23,518
+BUFSIZ26,546
+PIPE_BUF27,564
+MAXPATHLEN29,585
+RTLD_LAZY32,613
+RTLD_GLOBAL33,631
+FLOCK36,662
+L_TYPE37,702
+L_WHENCE38,722
+L_START39,744
+L_LEN40,760
+L_PID41,775
+SEEK_SET42,790
+SEEK_CUR43,807
+F_RDLCK44,824
+F_WRLCK45,840
+F_UNLCK46,856
+F_GETFL47,872
+F_SETFL48,888
+F_GETLK49,904
+F_SETLK50,920
+F_SETLKW51,936
+F_SETOWN52,953
+O_NONBLOCK53,970
+O_ASYNC54,992
+STAT57,1019
+ST_MODE58,1061
+ST_SIZE59,1083
+ST_MTIME60,1100
+S_IFMT61,1118
+S_IFDIR62,1144
+TMS65,1180
+TMS_UTIME66,1214
+TMS_STIME67,1232
+TERMIOS70,1261
+C_IFLAG71,1304
+C_LFLAG72,1320
+C_CC73,1337
+ISIG74,1351
+VMIN75,1364
+VTIME76,1377
+TCSADRAIN77,1391
+SIGACTION80,1419
+SIGSET_T81,1462
+SA_HANDLER82,1481
+SA_MASK83,1500
+SA_FLAGS84,1516
+SIG_DFL86,1536
+SIG_IGN87,1552
+SIG_UNBLOCK88,1568
+SIGHUP90,1589
+SIGINT91,1615
+SIGUSR192,1630
+SIGUSR293,1647
+SIGPIPE94,1664
+SIGALRM95,1681
+SIGTERM96,1698
+SIGCHLD97,1715
+SIGCONT98,1732
+SIGSTOP99,1749
+SIGTSTP100,1766
+SIGTTIN101,1783
+SIGTTOU102,1800
+SIGIO103,1817
+SIGNALS104,1832
+WNOHANG107,1894
+WUNTRACED108,1910
+FD_SET111,1938
+TM_SEC114,1975
+TM_MIN115,1990
+TM_HOUR116,2005
+TM_MDAY117,2021
+TM_MON118,2038
+TM_YEAR119,2054
+D_NAME122,2078
+SOCK_STREAM125,2105
+SOCK_DGRAM126,2125
+AF_UNSPEC127,2144
+AF_INET6128,2162
+SOL_SOCKET129,2180
+SO_REUSEADDR130,2199
+IPPROTO_IPV6131,2220
+IPV6_V6ONLY132,2242
+INET6_ADDRSTRLEN133,2263
+NI_MAXHOST135,2290
+NI_NAMEREQD136,2312
+SOCKADDR_IN6138,2333
+SIN6_FAMILY139,2355
+SIN6_PORT140,2375
+SIN6_ADDR141,2393
+ADDRINFO143,2412
+AI_FAMILY144,2430
+AI_SOCKTYPE145,2448
+AI_ADDRLEN146,2468
+AI_ADDR147,2488
+AI_NEXT148,2505
+
./glob.l,4297
Data4,51
AV7,77
@@ -728,7 +842,7 @@
retT731,14161
retE_E734,14196
-./sym.l,1775
+./sym.l,1776
cmpLongAX_F5,78
isInternEXY_F37,682
internEXY_FE75,1602
@@ -754,70 +868,70 @@
consTreeXE_E832,20452
balanceXY892,21928
balanceCEY910,22261
-doSymbols942,23060
-doIntern998,24505
-doExtern1023,24920
-doHide1090,26444
-doBoxQ1122,27014
-doStrQ1136,27275
-doExtQ1157,27686
-doTouch1172,27974
-doZap1186,28224
-doChop1219,28875
-doPack1270,30234
-packECX_CX1303,30799
-doGlue1360,32102
-doText1398,32868
-preCEXY_F1470,34741
-subStrAE_F1485,35071
-doPreQ1536,36220
-doSubQ1569,36841
-doVal1588,37192
-doSet1607,37539
-doSetq1640,38171
-doXchg1663,38574
-doOn1708,39507
-doOff1723,39766
-doOnOff1738,40028
-doZero1756,40376
-doOne1771,40635
-doDefault1786,40902
-doPush1813,41408
-doPush11849,42069
-doPop1898,42999
-doCut1922,43462
-doDel1977,44690
-doQueue2045,46275
-doFifo2088,47049
-doIdx2162,48649
-idxGetXY_E2205,49526
-idxPutXY_E2222,49872
-idxDelXY_E2292,51908
-doLup2351,53428
-putACE2491,57730
-getnECX_E2634,61728
-getEC_E2675,62637
-propEC_E2745,64466
-doPut2835,66915
-doGet2894,68112
-doProp2925,68682
-doSemicol2970,69541
-doSetCol2999,70068
-doCol3051,71146
-doPropCol3075,71580
-doPutl3113,72343
-doGetl3195,74044
-doWipe3253,75148
-wipeE3275,75582
-doMeta3298,76089
-metaCX_E3340,76865
-caseDataA_AC3366,77464
-doLowQ3378,77767
-doUppQ3393,78126
-doLowc3408,78479
-doUppc3460,79987
-doFold3512,81502
-isLetterOrDigitA_F3584,83607
+doSymbols942,23062
+doIntern1007,24783
+doExtern1032,25198
+doHide1099,26722
+doBoxQ1131,27292
+doStrQ1145,27553
+doExtQ1166,27964
+doTouch1181,28252
+doZap1195,28502
+doChop1228,29153
+doPack1279,30512
+packECX_CX1312,31077
+doGlue1369,32380
+doText1407,33146
+preCEXY_F1479,35019
+subStrAE_F1494,35349
+doPreQ1545,36498
+doSubQ1578,37119
+doVal1597,37470
+doSet1616,37817
+doSetq1649,38449
+doXchg1672,38852
+doOn1717,39785
+doOff1732,40044
+doOnOff1747,40306
+doZero1765,40654
+doOne1780,40913
+doDefault1795,41180
+doPush1822,41686
+doPush11858,42347
+doPop1907,43277
+doCut1931,43740
+doDel1986,44968
+doQueue2054,46553
+doFifo2097,47327
+doIdx2171,48927
+idxGetXY_E2214,49804
+idxPutXY_E2231,50150
+idxDelXY_E2301,52186
+doLup2360,53706
+putACE2500,58008
+getnECX_E2643,62006
+getEC_E2684,62915
+propEC_E2754,64744
+doPut2844,67193
+doGet2903,68390
+doProp2934,68960
+doSemicol2979,69819
+doSetCol3008,70346
+doCol3060,71424
+doPropCol3084,71858
+doPutl3122,72621
+doGetl3204,74322
+doWipe3262,75426
+wipeE3284,75860
+doMeta3307,76367
+metaCX_E3349,77143
+caseDataA_AC3375,77742
+doLowQ3387,78045
+doUppQ3402,78404
+doLowc3417,78757
+doUppc3469,80265
+doFold3521,81780
+isLetterOrDigitA_F3593,83885
./db.l,1175
getAdrZ_A6,117
@@ -1137,9 +1251,9 @@
getUdpZ_FB370,9724
putUdpBZ377,9869
-sys/emu.code.l,95
-errno_A8,134
-errnoC16,260
-wifstoppedS_F24,409
-wifsignaledS_F32,570
-wtermsigS_A40,725
+sys/x86-64.linux.code.l,94
+errno_A5,67
+errnoC10,169
+wifstoppedS_F16,287
+wifsignaledS_F21,413
+wtermsigS_A28,568
diff --git a/src64/version.l b/src64/version.l
@@ -1,6 +1,6 @@
-# 30nov12abu
+# 08dec12abu
# (c) Software Lab. Alexander Burger
-(de *Version 3 1 1 1)
+(de *Version 3 1 1 2)
# vi:et:ts=3:sw=3