Skip to content

Commit ab66f65

Browse files
authored
Merge pull request #161 from aldorlang/pab/rebase-2024-06
Pab/rebase 2024 06
2 parents 6196ec7 + 032a20e commit ab66f65

File tree

179 files changed

+2617
-809
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

179 files changed

+2617
-809
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
/build
66
/run_j
77
/build-2
8+
/.idea

aldor/.gitignore

+8
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,17 @@
77
/.metadata
88
/workspace
99

10+
/.idea
11+
*.iml
12+
/out
13+
1014
Makefile
1115
a.out
1216

17+
/.idea
18+
*.iml
19+
/out/
20+
1321
.#*
1422
\#*
1523

aldor/Makefile.in

+2-1
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,8 @@ am__DIST_COMMON = $(srcdir)/Makefile.in \
256256
$(top_srcdir)/lib/axldem/src/al/Makefile.in \
257257
$(top_srcdir)/lib/axllib/src/al/Makefile.in AUTHORS \
258258
amaux/compile amaux/config.guess amaux/config.sub \
259-
amaux/install-sh amaux/ltmain.sh amaux/missing amaux/ylwrap
259+
amaux/depcomp amaux/install-sh amaux/ltmain.sh amaux/missing \
260+
amaux/ylwrap
260261
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
261262
distdir = $(PACKAGE)-$(VERSION)
262263
top_distdir = $(distdir)

aldor/aldor/lib/java/Makefile.am

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
SUBDIRS=src test
22

3-
@BUILD_JAVA_TRUE@JAVA_TARGET = src/foamj.jar
3+
@BUILD_JAVA_TRUE@JAVA_TARGET = src/foamj.jar src/foamj-sources.jar
44

55
datalibdir = $(datadir)/lib
66
datalib_DATA = $(JAVA_TARGET)

aldor/aldor/lib/java/Makefile.in

+1-1
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,7 @@ top_build_prefix = @top_build_prefix@
357357
top_builddir = @top_builddir@
358358
top_srcdir = @top_srcdir@
359359
SUBDIRS = src test
360-
@BUILD_JAVA_TRUE@JAVA_TARGET = src/foamj.jar
360+
@BUILD_JAVA_TRUE@JAVA_TARGET = src/foamj.jar src/foamj-sources.jar
361361
datalibdir = $(datadir)/lib
362362
datalib_DATA = $(JAVA_TARGET)
363363
all: all-recursive

aldor/aldor/lib/java/src/Makefile.in

+18-6
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,22 @@
11
# ..From autoconf
22
@SET_MAKE@
33

4+
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
45
VPATH = @srcdir@
56
abs_top_builddir = @abs_top_builddir@
67
srcdir = @srcdir@
8+
top_srcdir = @top_srcdir@
79
top_builddir = @top_builddir@
810
builddir = @builddir@
911
abs_builddir = @abs_builddir@
1012
abs_top_srcdir = @abs_top_srcdir@
1113
subdir = aldor/lib/java/src
1214

15+
include $(top_srcdir)/mk/step.mk
16+
$(call am_define_steps, JAVAC JAVAJAR JAVASRC)
17+
18+
defaultTarget: all
19+
1320
.PRECIOUS: Makefile
1421
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
1522
@case '$?' in \
@@ -23,23 +30,28 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
2330
buildfiles := $(shell cd $(srcdir); find foamj -name \*.java)
2431

2532
outdir := $(abs_builddir)/classes
26-
jarfile := $(abs_builddir)/foamj.jar
33+
jarfile := foamj.jar
34+
sourcejarfile := foamj-sources.jar
2735

2836
# Build directly to a .jar file (easier than tracking .class files)
2937
$(jarfile): $(buildfiles)
30-
mkdir -p $(outdir)
31-
(cd $(srcdir); javac -g -d $(outdir) $(buildfiles))
32-
(wd=$$(pwd); cd $(outdir); jar cf $@ .)
38+
@mkdir -p $(outdir)
39+
$(AM_V_JAVAC) (cd $(srcdir); javac -g -d $(outdir) $(buildfiles))
40+
$(AM_V_JAVAJAR) (wd=$$(pwd); cd $(outdir); jar cf $(abs_builddir)/$@ .)
41+
42+
$(sourcejarfile): $(buildfiles)
43+
$(AM_V_JAVASRC) \
44+
cd $(srcdir); jar cf $(abs_builddir)/$@ $(shell cd $(srcdir); find . -type f)
3345

34-
all: $(jarfile)
35-
echo $<
46+
all: $(jarfile) $(sourcejarfile)
3647

3748
#
3849
# :: Automake requires this little lot
3950
#
4051
mostlyclean:
4152
rm -rf $(outdir)
4253
rm -f $(jarfile)
54+
rm -f $(sourcejarfile)
4355

4456
clean: mostlyclean
4557

aldor/aldor/lib/java/src/foamj/Clos.java

+4
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ public Word asWord() {
5858
return this;
5959
}
6060

61+
public Object toPtr() {
62+
return this;
63+
}
64+
6165
@Override
6266
public Value toValue() {
6367
return this;

aldor/aldor/lib/java/src/foamj/Fn.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,4 @@ public String getName() {
3131
public String toString() {
3232
return "Fn-" + name;
3333
}
34-
}
34+
}

aldor/aldor/lib/java/src/foamj/Foam.java

+5-3
Original file line numberDiff line numberDiff line change
@@ -357,18 +357,18 @@ public static Word osMemMap(Word w1) {
357357
}
358358

359359
public static void fiRaiseException(Word w) {
360-
throw new RuntimeException(w.toString());
360+
throw new RuntimeException(stringToJavaString(w));
361361
}
362362

363363
public static float arrToSFlo(Object o) {
364364
char[] arr = (char[]) o;
365-
return new Float(arrToString(arr));
365+
return Float.parseFloat(arrToString(arr));
366366

367367
}
368368

369369
public static double arrToDFlo(Object o) {
370370
char[] arr = (char[]) o;
371-
return new Double(arrToString(arr));
371+
return Double.parseDouble(arrToString(arr));
372372
}
373373

374374
public static int arrToSInt(Object o) {
@@ -542,9 +542,11 @@ public static Word javaStringToString(String s) {
542542
public static String arrToString(char[] arr) {
543543
String s = new String(arr);
544544
int idx = s.indexOf("\0");
545+
545546
if (idx == -1) {
546547
return s;
547548
}
549+
548550
return s.substring(0, idx);
549551
}
550552
}

aldor/aldor/lib/java/src/foamj/FoamHelper.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@ static public void setContext(FoamContext context) {
88
}
99

1010
static public <T extends FoamClass> T instanceForClass(Class<T> clss) {
11-
return contextForThread.get().instanceForClass(clss);
11+
return contextForThread.get().instanceForClass(clss);
1212
}
1313
}

aldor/aldor/lib/java/src/foamj/FoamJ.java

+10-1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ public Word asWord() {
2727
return this;
2828
}
2929

30+
public Object toPtr() {
31+
return arr;
32+
}
33+
3034
public String toString() {
3135
return "A" + arr.toString() + "]";
3236
}
@@ -60,6 +64,9 @@ public String toString() {
6064
return obj.toString();
6165
}
6266

67+
public Object toPtr() {
68+
return obj;
69+
}
6370
}
6471

6572
/**
@@ -194,7 +201,9 @@ public Value toValue() {
194201
}
195202

196203
static public class Bool extends AbstractValue implements Value, Word {
197-
private boolean value;
204+
public final static Bool TRUE = new Bool(true);
205+
public final static Bool FALSE = new Bool(false);
206+
private final boolean value;
198207

199208
public Bool(boolean b) {
200209
this.value = b;

aldor/aldor/lib/java/src/foamj/Record.java

+4
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,8 @@ public Word asWord() {
4444
public String toString() {
4545
return "[R: " + id + "]";
4646
}
47+
48+
public Object toPtr() {
49+
return this;
50+
}
4751
}

aldor/aldor/lib/java/src/foamj/Word.java

+9-1
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ public interface Word {
3333

3434
byte toByte();
3535

36+
Object toPtr();
3637

3738
public class U {
3839
static public Object toArray(Word word) {
@@ -42,6 +43,13 @@ static public Object toArray(Word word) {
4243
return word.toArray();
4344
}
4445

46+
static public Object toPtr(Word word) {
47+
if (word == null)
48+
return null;
49+
else
50+
return word.toPtr();
51+
}
52+
4553
static public <T> T toJavaObj(Word word) {
4654
if (word == null)
4755
return null;
@@ -70,7 +78,7 @@ public static <T> Word fromJavaObj(T t) {
7078
}
7179

7280
public static Word fromBool(boolean b) {
73-
return new Bool(b);
81+
return b ? Bool.TRUE : Bool.FALSE;
7482
}
7583

7684
public static Word fromChar(char c) {

aldor/aldor/lib/java/test/Makefile.in

-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ $(jarfile): $(buildfiles)
4646
(cd $(outdir); jar cf $@ .)
4747

4848
all:
49-
echo $<
5049

5150
#
5251
# :: Automake requires this little lot

aldor/aldor/lib/libfoam/Makefile.am

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
SUBDIRS = al
22

3-
@BUILD_JAVA_TRUE@JAVA_TARGET = al/foam.jar
3+
@BUILD_JAVA_TRUE@JAVA_TARGET = al/foam.jar al/foam-sources.jar
44

55
aldorsrcdir = $(top_srcdir)/aldor/src
66

aldor/aldor/lib/libfoam/Makefile.in

+1-1
Original file line numberDiff line numberDiff line change
@@ -421,7 +421,7 @@ top_build_prefix = @top_build_prefix@
421421
top_builddir = @top_builddir@
422422
top_srcdir = @top_srcdir@
423423
SUBDIRS = al
424-
@BUILD_JAVA_TRUE@JAVA_TARGET = al/foam.jar
424+
@BUILD_JAVA_TRUE@JAVA_TARGET = al/foam.jar al/foam-sources.jar
425425
aldorsrcdir = $(top_srcdir)/aldor/src
426426
runtime_CFLAGS = -I $(aldorsrcdir) -I ../../src
427427
runtime_ALDOR = al/runtime.c

aldor/aldor/lib/libfoamlib/al/Makefile.in

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ libraryname := foamlib
5050
exec_test_blacklist = $(library)
5151

5252
#AXLCDB := -W check -Csmax=0 -Fc -Zdb -Qno-cc
53-
AXLFLAGS := -Z db -Q8 $(AXLCDB)
53+
AXLFLAGS := -Q8 $(AXLCDB)
5454

5555
include $(top_srcdir)/lib/buildlib.mk
5656
libraryincdir := $(top_srcdir)/aldor/lib/libfoamlib/al

aldor/aldor/src/Makefile.am

+3
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ libstruct_a_SOURCES = \
159159
compcfg.c \
160160
comsg.c \
161161
comsgdb.c \
162+
csig.c \
162163
depdag.c \
163164
dflow.c \
164165
doc.c \
@@ -291,6 +292,8 @@ testsuite = \
291292
test/test_jcode.c \
292293
test/test_int.c \
293294
test/test_list.c \
295+
test/test_of_cprop.c \
296+
test/test_of_peep.c \
294297
test/test_ostream.c \
295298
test/test_printf.c \
296299
test/test_retyp.c \

0 commit comments

Comments
 (0)