-
Notifications
You must be signed in to change notification settings - Fork 3
/
ChangeLog
2173 lines (1995 loc) · 103 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2009-10-17 guidod <[email protected]>
* 0.30.71 has been released
* Makefiles had to be checked to get a proper tarball.
2009-10-10 guidod <[email protected]>
* pfe/exception-sub.c (p4_longjmp_loop): add the
PFE.setjmp_fenv_save(& PFE.loop_fenv) call to make
it save/restore the fenv state accross a schedule-jmp.
* pfe/def-regs.h: fix R>DROP 2>DROP etc.... the macro
was not using the X argument but a hardcoded value.
Thanks to Robert Epprecht for reporting the rdrop bug.
2009-10-09 guidod <[email protected]>
* autogen.sh: add anstests1 to configure.ac and reconfigure
which actually updates to the latest libtool (MANY files!)
* test/anstests1/Makefile.am added to allow running latest
anstests0.6.zip test harness. There are multiple errors
and failures that should be checked later. You can use
"make anstests" to run them or "make checks" to run both
the old test suite and the new anstests scripts. Consider
to use "make -k" (keep running) to see all errors/failures.
2009-10-08 guidod <[email protected]>
* pfe/core-sub.c (p4_accept_line): Josh Grams has reported that
ACCEPT differs from EXPECT in that it should allow the user to
edit a line buffer longer than the maximum string to be stored.
We replace the ARG expect-max with Posix INPUT_MAX to achieve a
compliant behavior with Forth DPANS94 which also refers to a
system edit line buffer maximum that "is not under control" of
the forth box. So we use a scratch buffer that is big enough.
2009-10-04 guidod <[email protected]>
* pfe/os-fesetenv.h: implement p4_setjmp_fenv_save/load and
use these around some of the setjmp-calls where a CATCH-domain
is erected that might possibly contain FLOATING elements.
* pfe/facility-mix.c: remove obsolete CLK_TCK which was not
actually loaded to the PFE core on load. This is actally a bug
in the word loader but none that is worth to invetigate. Also
updated some docs in the process
2009-10-03 guidod <[email protected]>
* ATTENTION: DONE MIGRATTION OF SOURCE CODE FROM CVS TO SUBVERSION!!
* prepare 0.33.71
2009-05-31 guidod <[email protected]>
* pfe/engine-ext.c: added missing reference to floating_misc wordset.
Thanks to Dick van Oudheusden for reporting this bug. This makes
words like "MS@" and "GETTIMEOFDAY" available to the default PFE.
2008-12-23 guidod <[email protected]>
* release 0.33.70
2008-12-21 guidod <[email protected]>
* various: completely remove bin/pfe-config (conflict with pkgconfig pfe.pc)
which in turn revealed a number of build bugs (mostly due to pkgconfig
to prefer pfe-uninstalled.pc when it exists in parallel with pfe.pc)
* Makefile.am: add "rpm" target for in-build-directory rpmbuild scheme
* test/checkans.fs: fixing tests - need 1000 bytes buffer instead of 500
* pfe/term-lib.c (tparm): the tparm call should have all the nine
extra parameters in its prototype (patch by Josh Grams)
* pfe/core-ext.c: noname should store-csp otherwise it can make
for "control structure mismatch" when the noname word contains
some "does>" handler. (bug reported and fixed by Josh Grams)
2008-11-24 guidod <[email protected]>
* pfe.spec - done some testing on the opensuse build service
2008-11-21 guidod <[email protected]>
* pfe/misc-ext.c: double-free due to usage of fclose() of glic - it seems that
the glibc does not yield EBADF for a closed file handle but it simply dumps.
* bug was reported by Jusha Grams on using "bye" in forth script - however this
is ignored in the current PFE anyway (you need to say "-q" on the commandline)
20008-10-08 guidod <[email protected]>
* header-ext.c: move DEFER words to FORTH as specified in forth200x
* header-ext.c: move SYNONYM to FORTH as specified in forth200x and
move the ALIAS word from chainlist-ext to header-ext
* term-ext.c: move ekeys to FORTH as specified in forth200x
2008-09-12 <[email protected]>
* updating dstrings-ext.c as follows...
* Revised P4_PUSH_STR() to avoid a left/right evaluation
order side effect in *--SSP assignment, because gcc 4.0.1
does it differently from earlier versions under Mac OS X
Leopard.
* Renamed, adjusted labels and pronunciations:
old new
MPLACE (M!)
SM, M,S
$S>-COPY $,S
CAT $+
CAT" $+"
CAT` $+`
S-CAT S+
PARSE-CAT PARSE-S+
CAT$@ CAT$P@
* Deprecated with comments the changing of the count field
from its default (unsigned long).
* Revised concatenations so they do nothing on the empty
string except drop it (in particular, they don't start a cat).
* Revised DROP-$FRAME to nip the top frame from beneath
other strings, thus removing the restriction that the
string depth not be increased between $ARGS{...} and the
terminating semicolon.
* Added $EXCHANGE, whose code is a major factor in the new
DROP-$FRAME.
2008-09-11 guidod <[email protected]>
* pfe/environ-ext.c: there was a bug in the environment-query search
such that it was unable to find any ENVIRONMENT word containing
lowercase characters. This conflicts with forth200x implementation
environment queries which are by definition lowercase.
* pfe/header-ext.c: introduce p4_SHOW and FCode(p4_logmessage_RT) such
that there may be declarations in ENVIRONMENT for the value-less
forth200x/queries.
* make up entries for all the forth200x X:queries - other than expected
any query on them will show a notification logmessage pointing to
the implemented version (which would be returned by our own values).
* pfe/header-ext.c: make synonym PFA to default to itself - so if the
NAME> on the target name does throw then the resulting word will
yield a bad-synonym-throw on the next call.
2008-09-10 guidod <[email protected]>
* pfe/fpnostack-ext.c + pfe/floating-ext.c: cleanup REPRESENT - only
use the new code using C's sprintf("%e") to get the representation.
* pfe/fpnostack-ext.c + pfe/floating-ext.c: use signbit(X) and fabs(X)
to seperate sign and value of a floating point representation (this
is needed to handle the different representations of "+0.0" and "-0.0")
* pfe/floating-ext.c: use another implementation of REPRESENT that builds
directly on the specifics of sprintf(2) "%e" value representation.
* pfe/Makefile.am: install-exec-hook should use "ln -sf" to put renamed
executables into $bindir - that allows reinstall (report from DNW)
2008-09-01 guidod <[email protected]>
* pfe/pfe-master.odt - the *.dbk converted to *.odt (not yet packaged)
* pfe/pfedoc/odtdocument.py - writing pfe-words.odt (not yet merged to master.odt)
* .... and extend to make pfe-wordsets.odt (again, not yet merged to master.odt)
2008-08-31 guidod <[email protected]>
* locals-ext: the p4_word_paren_local functionality would compile the code
for enter_locals before saving away a locals name. This would conflict with
"BL WORD COUNT (LOCAL)" where HERE is occupied with the current name buffer.
Hence the name buffer was trashed and junk bytes saved as the local's name.
* This was a report from David N. Williams and Anton Ertl based on discussions
on comp.lang.forth about the questionable "{...}" locals definition syntax.
Also it became obvious that "(LOCAL)" was immediate which it should not
have been ever. This is correct as well and the anslocal.fs test works ok.
* test/anslocal.4th add the test program that had revealed the problem
2008-05-25 guidod <[email protected]>
* complex-ext: make actual compilation dependent on PFE_HAVE_ISINF detected (newly added)
* prep 33.70
2008-05-12 guidod <[email protected]>
* hpux cc fixes
* add test64.ok for x86_64 variants
* use "testlist:" target along with Makedist.mk for semi-automatic *.ok pickup
* release 0.33.69 (V_33_69)
* oops, introduced tests SKIPS = queryapp (does not work, again)
2008-05-11 guidod <[email protected]>
* implement "./" local path resolution
* swap diff order of test/Makefile.am
* pfe/def-config.h: remove PFE_DECLARE_BLOCK/PFE_DECLARE_END macros
the actual source files (cdecl-ext.c/signals-ext.c) define direct to { and }
reason: solaris10 gcc 3.4.1 -std=c99 does not make an error but it still
issues a "warning: ISO C90 forbids mixed declarations and code"
* fix some of those warnigns in other files (via ___/_____)
* pfe/option-set.c: static allocated_ only when USE_THREAD_BLOCK
* test/*.ok - make all regression tests based on *.ok templates
2008-05-11 guidod <[email protected]>
* solaris-10: MAKE=gmake CFLAGS="-lcurses --std=c99" sh configure
|
| It is invalid to compile an XPG3, XPG4, XPG4v2, or XPG5 application
| using c99. The same is true for POSIX.1-1990, POSIX.2-1992, POSIX.1b,
| and POSIX.1c applications. Likewise, it is invalid to compile an XPG6
| or a POSIX.1-2001 application with anything other than a c99 or later
| compiler. Therefore, we force an error in both cases.
|
and therefore, -D_XOPEN_SOURCE=600 must be set (removed _XOPEN_SOURCE_EXTENDED)
* in -std=c99 soliris10 build breaks with
../../pfe/../pfe/term-lib.c:1130: error: too few arguments to function `tparm'
the reason: grep tparm.*char /usr/include/*.h
/usr/include/term.h: *tparm(char *, long, long, long, long, long, long, long, long, long);
also documented in solaris10 tparm
char *tparm(char *str, long int p1, long int p2, long int p3,
long int p4, long int p5, long int p6,
long int p7, long int p8, long int p9);
as well as in the opengroup Unix98 standard
http://opengroup.org/onlinepubs/007908799/xcurses/tparm.html
* in -std=c99 soliris10 removes strlcat from its headers if also some XOPEN
flag has been defined - those Sun managers seem to be really mad these days.
Try to help it out with -D__EXTENSIONS__.
* os-setjmp.h: solaris10 defines setjmp as a macro but not sigsetjmp.
* does not compile testmodules but the ./pfe parts are okay.
* release 0.33.68 (V_33_38)
2008-05-10 guidod <[email protected]>
* pfe/def-regs.h: fix p4RP unused message in sbr-arg-threading
... now all variants should compile without any warning message (yeah)
* rename forth200x extensions from "EXTENSION:X" to "forth200x/extension"
the lowercase-naming was intentional (documented in the standard)
and the name should easily map to an external file such that an
enviornment query S" x/deferred" ENVIRONMENT? can map to REQUIRED.
* make &10 prefix obseletion warning dependent on REDEFINED_MSG as well,
allows to clear out some quirks in the regression testing.
2008-05-10 guidod <[email protected]>
* make p4_check_deprecated(xt) -> p4_check_deprecated(nfa) which allows
again that a SYNONYM an have a deprecation before (the result of
p4_name_from(nfa) yields the target xt and not the cfa of the nfa).
* pfe/forth-83-ext.c: use DEPR-loader for "><" and ">MOVE<" since
the message is a bit longer (not an exact synonyme available)
2008-05-06
* the bug ist that isatty(2) does not recognize it is being piped from "cat",
so it does not only initialize the terminal but QUERY is going to be set
on get_vkey which finally ends in a curses routine.
* rebuild tests to use *.ok templates
2008-05-05
* add extension-query numbers for Forth200x proposals
* add THROW codes as mandated by http://www.forth200x.org/throw-iors.html
* add also SYNONYM:X althought it is just propososed (RfD).
* add additional backslash-sequences as defined in ESCAPED-STRINGS:X,
like \l = '\n' and '\m' = '\r\n' ('\n' is either '\n' or '\r\n').
and \z, \t ... especially \t seems to have been forgotten so far.
* append the ESCAPED-STRINGS:X to ZCHAR-EXT wordset where S\" is defined.
* make rpm shows that a *.py had been forgotten
* the new test/*.ok files were not packaged
* make rpm has a regression error...
* prep 0.33.68 (not yet published)
2008-05-05
* implement DEFER@ DEFER! and ACTION-OF as specified in
http://www.forth200x.org/deferred.html
* during the implemention a bug in BEHAVIOR was found (an alias
to DEFER@) that indicates that it had not been used before.
Therefore it can be safely removed.
* adding http://www.forth200x.org/deferred.fs but use a modified
variant deferred-x.fs for regression testing
* a bug was found in deferred-x regression - the p4_defer_RT was
not working in sbr-threading as it was not using FX_USE_BODY_ADDR
setup and FX_POP_BODY_ADDR IP-adjustment.
* done regression across
* release 0.33.67
2008-05-04 guidod <[email protected]>
* introduce log.diff comparison for "make check"
* switch to test/string.test.ok for a first example
* adding http://www.forth200x.org/tests/fp-stack.fs ok
* adding http://www.forth200x.org/tests/test-num-prefixes.fs
* adding http://www.forth200x.org/tests/test-num-prefixes2.fs
* introduced PREFIX_DECIMAL_OLD '&' and change PREFIX_DECIMAL '#'
to match with forth200x number-prefixes proposal
* adding http://www.forth200x.org/tests/number-prefixes.fs (modified)
and updating the test-num-prefixes output templates
* rename "+FIELD" to "+FIELD:" and make the old one a SYNONYM
* deprecate "+FIELD" reserved by http://www.forth200x.org/structures.html
* note: because of the overlap, forth200x structures can not be implemented
at the moment - only a future version may pick it up.
* adding K-INSERT and K-DELETE from forth200x.org/ekeys.html
* rename K1 to K-F1 and S-K1 to K-SHIFT-F1 to be close to forth200x ekeys,
the old names are provided as SYNONYMs (they are NOT deprecated)
* adding EKEY>FKEY and K-SHIFT-MASK - the latter is only used to decode
the K-SHIFT-F1 values to a K-F1 K-SHIFT-MASK OR value
* rename REQUIRES to REQUIRE - the old is kept as a SYNONYM (not deprecated)
that renaming conforms to http://www.forth200x.org/required.html
* rename p4_required/p4_requires to p4_include_required/p4_include_require
to make its relation p4_included more obvious in code.
* adding http://www.forth200x.org/tests/parse-name.fs
with SYNONYM PARSE-NAME PARSE-WORD
* adding PARSE-NAME with the implementation of PARSE-WORD and adapt the test
* rename X:FP-STACK to FP-STACK:X to be compatible with
http://www.forth200x.org/extension-query.html - that proposal will not
be used but application programmers shall be supported that want to
test explicitly for a Forth200x extension.
2008-05-04 guidod <[email protected]>
* remove old loader from dict-comp.c
* requires to make p4_exception_string into a proper runtime-word
that lives now in exception-ext.
* kill forth-signal handling from exceptn.4th and move it to forth-signal.4th,
as a consequence "make check" will now work without any errors.
2008-05-04 guidod <[email protected]>
* the segfault at system-exit seems to be introduced by p4_name_from
being called from outside a Forth VM context. Looking over the source
it could not be pinpointed - probably hidden somewhere in another function.
Instead, move out the deprecated/obsoleted checks to a seperate call of
p4_check_deprecated(xt) and run in inside p4_interpret_find_word. This
however makes it possible to write your own outer interpreter using
FIND EXECUTE and COMPLE, that skips over the functionality - but such
a thing seems to be improbable and deprecated/obsolete message will
appear.
* introduced (CHECK-DEPRECATED) to allow user-level code to take
advantage of this PFE deprecation mechanism.
* rename "(DEPRECATED" to "(DEPRECATED:" - it looks better.
2008-05-03 guidod <[email protected]>
* improve logging - replace some usages of fprintf(stderr with P4_fail
* introduced "(DEPRECATED word message)" along with dict-comp code.
* map USING and USING-NEW to the new variant - simply try
"USING nonexistingfile.blk" and see what it does.
* oops: a segfault crept in (on BYE in normal forth).
* bug: using PFE.execute does not work for words using BODY or CODE. The
simplication of using a direct (*p4_to_code)() was wrong and absolutely
not needed because p4_call maps to p4_sbr_call which is handling it correct.
2008-05-01 guidod <[email protected]>
* fixing DOES> in sbr-threading: gcc 4.2.3 uses arg-register %eax even if it was
allocated to a local variable. Copy the value early on and everything is ok.
* use execution-references in code with PFX only
2008-05-01 guidod <[email protected]>
* remove char signedness warnigns (in ZNAME-ITC only one is left (deliberately))
* p4_match goes to str/len on target string (resolves another signedness problem)
2008-05-01 guidod <[email protected]>
* allow for -DPFE_WITH_ZNAME that will create word names as zero-terminated strings.
* In the default mode [PFE_WITH_FFA] all name-pointers will be zstrings, therefore
`needs zchar-ext ' dup >name dup zcount type` will yield 'dup'
* In compatible mode [PFE_WITH_NO_FFA] a hybrid word header is created where the
name-pointers point to a flag-field that will also have a count-value in the
lower bits if the name-length is below 32. However in that mode each word is also
terminated with an additional null byte - so NAME>STRING prefers ZCOUNT instead
of the COUNT 31 AND. As the latter is possible some old code might get along with
it while new code could [theoretically] take advantage of dictionary names of
unlimited length.
* does not only change header-sub and some macros - especially FIND and the lined
name-completion needs to be fixed. In some cases we do switch to using a POCKET
for storing intermediate values. Effectivly this limits the maximum word name
size to POCKET_SIZE-1 -> by default that is 255 matching the maximum COUNT but
it is still bigger than either 31 in compat-header-modes or 127 with FFA headers.
2008-04-30 guidod <[email protected]>
* standardize on P4_NAMELEN/P4_NAMEPTR - avoid NFACNT !
2008-04-25 guidod <[email protected]>
* pfe/debug-ext.c (is_sbr_compile_call_to):
* pfe/def-sbrcode.h: on PPC, expanding the macro twice will result in doubled labels
so we work around that with redefining (a new macro) PFE_SBR_LABEL_(label)
2008-04-24 guidod <guidod@pc3>
* pfe/floating-ext.c: mark X:FP-STACK (forth200x)
2008-04-23 _ <[email protected]>
* add pfe/os-string.h to bin/pfe-exec.c to help with x86_64
2008-04-20 _ <[email protected]>
* allow pfedoc/forthheader.py to run standalone producing a forthheaderxml document
* allow pfedoc/forthwordset.py to run standalone producing a forthwordsetxml document
* create pfedoc/forthmodule.py - if run standalone it produces a forthmodulexml text
* modify Makefiles for "forthxml" and "forthxmls" targets creating those xml documents
2008-04-20 _ <[email protected]>
* unless SBR-threading, show the recognized compiled words only as comment
* tested on x86 ITC with a CODE word that calls the DUP execution
2008-04-20 _ <[email protected]>
* switch back and forth between sbr/asm in decompiling
* Copyright update to 2008
2008-04-20 _ <[email protected]>
* bug report from DNW: multiline-comments do not work anymore.
Caused by wrong returncode in core-sub p4_parse_word in the
"empty:" case which should be "return 0" instead of "return 1".
Introduced in pfe-0.33.63 and corrected for next release
* release 0.33.66
2008-04-20 _ <[email protected]>
* debug-ext sbr-decompiling can now recognize all compiled words
which allows to make a normal decompiler in the future.
2008-04-19 _ <[email protected]>
* debug-ext is now able to SEE-decompile sbr-threaded colon-words
* while working on it, the assembler END-CODE was fixed to do the
right thing - also the TOOLS-EXT ans ASSEMBLER-EXT words for
CODE ;CODE END-CODE are similar now.
2008-04-19 _ <[email protected]>
* import to Eclipse
* fix m4 macro to enable pfe-uninstalled.sh in testmodules
* reduce warning count in sbr-threading mode
2008-04-18 _ <[email protected]>
* introduce FX_SP_ROOM/FX_SP_DROP in def-macro.h and pull down
all the FX_xDROP/FX_xROOM macros to those base definitions.
* release 0.33.65
2008-04-18 _ <[email protected]>
* try sh configure --with-regs=2 --with-sbr-threading
will yield a good result on x86 with GCC 4.1... this is built
on a completely different implementation of the sbr RP-handling
which is not done with inline-asm anymore but instead all the
primitives with an RP-effect will compile the RP-effect machine
code before or after the original subroutine. The subroutine
does simply do the rest, i.e. without modifying the RP.
* fixed automatic addition of -fno-builtin required for newer GCC
* -momit-leaf-framepointer and --with-args make for nice and readable
compiled primitive machine code.
2008-04-15 _ <[email protected]>
* nuke -fomit-frame-pointer -DPFE_OMIT_FRAME_POINTER and delete all
asm reference to %ebp on i386. It does fit well with modern
code optimization and current GCC can not compile proper code
when ebp is (ab)used for something different than a stackframe.
2008-04-07
* Krishna Myneni - update to fpnostack-ext adding both FLOATING-EXT
and FLOATING-STACK environment query results.
2008-04-07
* Josh Grams - update exception-sub to print line-numbers starting
at 1 (see also MISC-EXT SOURCE_LINE for the same)
2008-04-04
* had to disable X11 tests in pfe/configure.ac - on Ubuntu it would
not only link libpfe to libX11 but upon Forth invokation it would
open a new X11 terminal - and of course all 'check's failed.
2007-02-18 _ ref. <[email protected]>
* http://sourceforge.net/forum/forum.php?forum_id=665365
As of 2007-02-08, SourceForge.net Compile Farm service
has been officially discontinued.
2007-02-16 _ <[email protected]>
* finally implemented term-x11.c ... tetris is almost working with it
* Enable at configure --with-x
starts automatically in X-Window if DISPLAY found in `env`
2006-10-08 _<[email protected]>
7Oct06 * In complex-ext.c: Fixed comments for doc autogeneration,
removed superfluous _Bool, deprecated Z-ROT with P4_xOLD in
favor of -ZROT, and informally tested ZLITERAL.
* In dstrings-ext.c: Fixed comments for doc autogeneration, and
added $GC-LOCK@ and $GC-LOCK!, with tests in dstrings-test.fs.
2006-10-05 _ <[email protected]>
* CODE and ASSEMBLER have been given a generic implementation
in ITC (traditional) model.
2006-09-26 _ <[email protected]>
* change REFILL / NEXT-LINE to return P4_TRUE (-1) instead of +1.
* introduce p4_bool_t / p4_cell_t in pfe/def-cells.h
2006-09-26 _ <[email protected]>
* p4_preload_interpret does work now. You can have a look at the
current definition with SEE (INTERPRET). That routine is being
activated thru INTERPRET-COMPILED ON! - of course there is
hardly any difference to be seen. To make it visual, I did
overload the behavior on "undefined word" which does print
"oops.." just before the 13 THROW. Look for that.
* floating-ext does implant itself into (INTERPRET) - even that
the actual implementation is verrrry hackish.
* assembler-ext module aded - and tools-ext provides a basic
set of words to fulfill the Forth-Standard requirements.
(fixed some problems a bit later - tested only with "CODE")
* krishna myneni (of kForth fame) had been porting the gforth
x86 assembler - one might want to have a look at it:
ftp://ccreweb.org/software/kforth/examples/asm-x86.4th
ftp://ccreweb.org/software/kforth/examples/asm-x86-examples.4th
2006-09-25 _ <[email protected]>
* add FX_SKIP_BRANCH
* experimental compiled outer interpreter:
see INTERPRET-FIND
see INTERPRET-NUMBER
: my-interpreter
begin ." ok! " cr
parse-word nip 0= if \ end of line
refill 0= if exit then \ end of file
parse-word nip 0= if exit then \ empty line
then
interpret-find
interpret-number
again
;
' my-interpreter interpret-execution !
interpret-compiled on!
* hint1: toolbelt-ext knows a word NEXT-WORD with implicit REFILL
* hint2: QUERY will only get a line from terminal, REFILL will do
the same but also works on other SOURCEs (files, evaluate)
2006-09-22 _ <[email protected]>
* complex-ext.c - integrating last version from David N. Williams:
* Version 0.8.9
* 6Sep06 * Skipped version 0.8.8, to sync with complex-kahan.fs.
* Removed I/, renamed (-I)* as -I*, and renamed minimal
mixed ops, with P4_xOLD for old names.
* Version 0.8.7
* 15Jan05 * Changed ZBOX to conserve signs for all cases, contrary
to Kahan, p. 198, but in agreement with its use in
ARG, p. 199.
* Fixed bug in p4_carg(): x and y stack order reversed
in ZBOX call when x or y is infinite.
* 16Jan05 * Replaced in complex-ext.c:
_extern double
p4_cabs
by
_export double
p4_cabs
* Reordered and updated complex-ext.h.
* 21Jan05 * Added optional calls to C99 elementary functions for
comparison of results.
* 25Jan05 * Reordered exception save in |Z|.
* 30Jan05 * Found out that R2P1 and T2P1 were inverted! Our tests
for |Z| were all perfect, and remain so after the fix!
More motivation for a table driven test.
* 31Jan05 * Understood a discrepancy with complex-kahan.fs as due
to compiled x*x + y*y keeping doubles in registers
enough to benefit from the G4/PPC guard bit. Did that
with a special version of |Z|^2 and -ffloat-store.
* We noticed sometime earlier, and confirmed today, that
using the MacOS X complex functions in complex.h
requires -lmx, whereas fenv.h does not, although it
says it does.
* 15Feb05 * Removed Z=0, etc.
2006-09-22 _ <[email protected]>
* rename p4_if_execution to p4_q_branch_execution
* rename p4_else_execution to p4_branch_execution
* keep p4_if_execution and p4_else_execution - marked OBSOLETE
* modify relevant smart-words to use p4_*branch_execution (if,else)
* fix BRANCH / ?BRANCH in system-ext.c - they should be compiling!
* fix AHEAD - it was defined as : AHEAD MARK> ORIG# ; but
it should have been : AHEAD BRANCH MARK> ORIG# ; ever since
* thanks to David N. Williams for tiptoeing me on this bug. The
code portion had been marked as "fixme: isn't that incorrect ?"
but it is until now that the fixme can be removed, finally.
* all usages of FX(p4_ahead) had to be adapted - they were all
wrong leaving the system in a nonfunctional state. Always use
explicit "MARK> ORIG#" instead of the old "AHEAD".
2006-09-21 _ <[email protected]>
* docs - skip over some man3 exports that would not be fine
for a real `make install` in the system
* `make` will also `make man1` now just like `make install`
will automatically trigger `make install-man1` - this does
not include `make man3` or `make install-man3` ..
use `make it` to trigger `make all` and `make mans`
* pfe.spec - fixup the build and install targets to ensure
full packaging of `bin/lib`, `mans` and `docs`. Finally,
and years after the last full release, pfe can be rebuild
completely in a simple process on a standard (Linux) PC.
2006-09-20 _ <[email protected]>
* doc-completed - the full sourceforge website can now be rebuild
with a call to "make docs". You may install a local copy by
using "make install-docs DESTDIR=$HOME/pfe". A single-stop
upload to sourceforge can be achieved with "make install-sf".
2006-09-19 _ <[email protected]>
* doc-chain generates a pfe-wordsets.html document now - note that
some doc parts have a "(no description)" entry which should be
fixed for the next release. Often it is "/*.." instead of "/**.."
2006-09-16 _ <[email protected]>
* doc/pfedoc/*.py doc/makedocs.py - use "make docu" to build
along the newest doc-build-chain. It's also the default target
in the "doc" subdirectory - and it will be the only one in
the future.
2006-08-14 _ <[email protected]>
* pfe.spec - making over with rpmbuild --with-options
* configure.ac - default --programm-suffix is "-forth" now
* make-install will `ln -s pfe-forth pfe` now
* rpm-post/postun will `ln -s pfe-$variant pfe` now with
checking variants in forth/call/calls/fast/fastest
* so finally a pfe rpm will only contain a single variant
which will be a traditional ITC by default. You need to use
rpmbuild --rebuild --with-call for a call-threaded variant
* make-rpms will build pfe-forth-*.rpm and pfe-call-*.rpm that
can be installed in parallel now. The new way for multibuilds.
2006-08-11 _ <[email protected]>
* compilechecks - it seems that some new gcc does again break
--with-sbr-theading model. It's a plain nuisiance and so I
consider to drop the model. Since sbr-call-threading does not
give an advantage over plain call-threading on modern
superscalar architectures, it can be dropped as well leaving
pfe on a pure portable level. That's the plan for the next
generation of the Portable Forth Environment that will start
off next.
* release 33.61
2006-08-10 _ <[email protected]>
* def-sbrcode.h/def-macro.h change all *((T)X)++ into new P4_xCOMMA
that gets us rid of some warning messages about improper
use of a typecasted item as an lvalue. Arrgh, bad new C99.
* def-gcc.h - gcc attribute __malloc__ and _const_ was inappropriate
on debian 3.0 for alpha with gcc 2.95.4 - this compiler does not
allow __attribute__ syntax between function head and body.
* term-lib.c:53 - #ifdef (unix && sun) is not enough - the newer
solaris9 features "fixed" headers for putchar / tputs exports
* doc/Makefile.am - bsd make calls for duplicate %.html rule in
doc/-subdir which is really %.html : %.xml and %.html : %.htm.
...guess it does only understand traditional rules .htm.html:
* stackhelp-ext.c - add cast to int for 64bit cells on alpha-cpu
* WW x86-openbsd1 can not link a shared library for testmodule2
* WW x86-solaris1 fails to link remote but does while online(?!)
* WW sparc-solaris1 says comple-ext.896 "isinf" is not declared.
2006-08-09 _ <[email protected]>
* append makefile rules to allow automatic sf compilefarm testing
* oops: bsd make does not understand $^ for module-dll rules. In
fact we find UNIX make to only know ($@ $% $? $< $*). The $^ as
all-source is known as $> to bsd make. Sun ccs make does not
know either. We need to resort back to "$?" which is possible
for the module-dll.c rules in pfe/ and testmodule*/
* http://www.opengroup.org/onlinepubs/009695399/utilities/make.html
* let autogen.sh run "make autoreconf" - autoreconf is easier
* term-lib.c: rename t_puts > c_tputs; reason netbsd:
../../pfe/term-lib.c:735: error: conflicting types for `t_puts'
/usr/include/termcap.h:62: error: previous declaration of `t_puts'
* complex-ext.c: #error no fenv.h seen on openbsd - modify to emit
a gcc warning and continue with dummy functions. For the usual
fmin, fmax, signbit we can approximate with inlines but all the
overflow/underflow checking with fetestexcept is impossible
here.
* solaris: the compilefarm did have both /usr/local/bin/gcc and
/opt/SUNWspro/bin/cc - but linking -lncurses will fail. It had
mixed the library and headers from different locations with
/usr/local/lib/libncurses from gcc and /usr/include/curses.h
from sunwspro intended for /usr/lib/libcurses. Both sparc and
x86 did show different error messages! Just be sure that the
/usr/local/include/ncurses.h is being found by modifying INCLUDE
2006-08-08 _ <[email protected]>
* cvs repository archive as pfe-33 on pfe.sourceforge.net
* fix minor build issues and "signedness warnings" by gcc 4.1
2005-01-14 _ <[email protected]>
* prepare x86_64 sbr-threading. It does not work due to the
stack-segment being not executable (the first "exec" will
segfault). However, we can enable registers R12..R15 for the
--with-regs allocation. And remember that x86_64 ABI uses a
register-based callframe for the first two args. Hooray.
Downside: native call-layout is 16byte-aligned instead of the
forthish 8byte (it's optional however, just runtime penalties),
so omitting the frame-pointer push/pop is not that a good plan.
2005-01-13 _ <[email protected]>
* ax_enable_builddir.m4 was updated to ensure that the *.tar.bz2
is copied as well - the earlier version made for a pre-version
of the tarball to end up at the sourceforge download area.
* update pfe/complex-ext.c with the latest DNW changes
* redistribute pfe/complex-pfe.log to reflect the latest changes
* engine-set ensures to mate each VM_LOAD with a CALLER_SAVE
* cut down p4_interpret into p4_interpret_query + p4_interpret_loop
to help us get rid of compiler bugs around.
2005-01-11 _ <[email protected]>
* move sbr-snippets from def-regmacro to def-sbrcode and
include it as a new header file
* start creating sbr decompile support
* add option-set/engine-set instead of main-sub includes
* make FreeThread/FreeOptions to return a "char" whether a
thread block does still exist. The value is usually ignored.
* add PFE_HAS_TLS_SUPPORT to pfe/_config.h
* use it in option-set to define static __thread marker
when using gcc/C99
* introduce pfe/def-regth to move extern-declarations to
a single header file - use the derived PFE_USE_THREAD_BLOCK
instead of the configured PFE_WITH_STATIC_REGS only.
* hmm, __thread"ed seems to be broken
2005-01-10 _ <[email protected]>
* add CODE/END-CODE for those architectures where we do know
the assembler-snippets for sbr-call-threading.
* adapt test/checkans accordingly
* move "RAISE" and "SIGNAL" from misc-ext to signals-ext
* mark both "RAISE" and "SIGNAL" as obsolete and introduce
RAISE-SIGNAL and FORTH-SIGNAL. Since RAISE-SIGNAL is
defined with a different stack behavior we also introduce
"RAISE-SIGNAL.DROP" as the fallback for the old RAISE.
* mark forth-signal callback as FIXME
2005-01-08 _ <[email protected]>
* add comment blocks to mk/Make-H.* (i.e `make gen` / `make force-gen`)
2005-01-07 _ <[email protected]>
* serious: p4_Exec calls three parts with an "th"(p4_Thread)
argument but p4_run_script_file has been using PFE before
re-preparing the hardware VM registers. That is no problem
if the register was not used in between but it breaks on
some platforms. Damn it!
* modifying test/wordsets.fs to use TOOLS-EXT ... reveals another
buglet: the "-I" adds to the end of the inc-path and any
system script is found first - which does not match the local
test-for-correctnesss *.sh script definitions.
2005-01-06 _ <[email protected]>
* minor adaptions for x86_64 and gcc3.4 support
* add lots of "const" around (include dstrings/floating)
* adapt fpnostack for x64 where sizeof(double) == sizeof(cell)
* add lots of cast to "int"(printf precision) or "long" (printf
numeric value) or even change global variables to from "p4ucell"
to "unsigned" where there were warnings on LP64 (x86_64). Note
that "unsigned" might be 16bit on some systems (LP32), so this
is only fine for the values being small usally. Otherwise one
would use "unsigned long" instead which is 64bit on LP64.
* modify def-config.h with a "sensitive" modification:
if USE_FEEKSO then always set _LARGEFILE_SOURCE
(before we were only setting it when also LARGEFILE_SENSITIVE)
Some squarehead header files do cut out some "usual" exports
when any (!) posix def was seen and fallback to pure posix,
so this modification may lead to "missing function prototype"
warnings in other areas. (may be we need to reverse it later..)
* introducing p4celll which is defined as "long" instead of the
traditional p4cell to be defined as "int". However, thinking
it over again we see that "p4cell" should be "long" always
to accomodate with common LP32/ILP32/LP64 systems. The old way
has been (obviously) driven by ILP32 system tests.
* lots of DROP/ROOM changes to make fpnostack-ext 64bit-ready,
(and S>F had a bug!)
* test/checkans breaks with a parsing-error on x86_64. Not yet fixed.
2005-01-04 _ <[email protected]>
* testing for -9 and -23 in exceptn (SIGSEGV and SIGBUS).
* move INSTALL to INSTALL.TXT - darwin "make install" will
fail because filesystem names are check case-insensitive
and the "install" target does already exist.
* The "$<" is not portable in explicit make rules - that's
what "info autoconf" says and which has come up as a
problem on some BSD machines with a non gnu make tool.
Let's try with "$^" as a substitute ("all listed dep targets")
* add def-gcc.h for gcc-specific attribute declarations
* add gcc function-const declarations to core-sub.c, version-sub.c
* rename utils-sub.c to os-delay.c
* cut out p4_gettimeofday into p4-gettimeofday.c and
introduce def-cell.h for the basic typedefs.
* move some defines from def-xtra.h to _missing.h:
extern acess() and extern close() for vxworks
* move the rest out of the way and make the include def-xtra.h
into an include of def-limits.h plus _missing.h
2005-01-03 _ <[email protected]>
* modify test script to return SKIP on missing floating module
* modify toplevel makefile to exit with failure even for the
make check-all case - all pfe.spec variants must be correct now!
* correct suffix-transform install of modules and pkgconfig files
2005-01-03 _ <[email protected]>
* create def-check.c and def-limits.h
* change some def-headers to include at most pfe-sub.h
* move testmodule to testmodule1 and create a new subdirectory
testmodule2 which shows a non-automake autoconf'ed way to
build and install a pfe binary module
* add p4_NEED / P4_NEED code for loader-WordLists
* update pfe/complex-ext.c from DNWs site
* modify complex_init - use new P4_NEED loader-code
2005-01-02 _ <[email protected]>
* reworked the asm parts of the header files
* both -sbr-call-threading and -sbr-call-arg-threading do work,
atleast for i386 architecture. Perhaps the others are broken
now for the change of p4RP/PFE_SBR_RP by +1 ... where the
corresponding -1 adjustment in other places have been done blindly.
2004-12-01 _ <[email protected]>
* checking for sbr-call-threading - and found a master bug
that did not hit before since we did use -fomit-frame-pointer
but now we use the #define p4IP (p4RP[PFE_SBR_IP_OFFSET])
and "PFE_SBR_IP_OFFSET = -1". The hardware return-stacks
usually grow downwards, and while the "-1" seems natural it
nethertheless wrong: now changed to "PFE_SBR_IP_OFFSET = +1"
* another sbr-threading bug was found in the p4_NEST trampolin
* it still leaves us with a series of test/check failures but
there a little less of them.
* and a long while little the bug was found:
if not -fomit-frame-pointer then a standard stack frame is
created. However any (newly introduced) PFE_SBR_RP_EXIT
will not restore the parent-ebp since the forth sbr-threading
model does not use a frame-pointer. Therefore, we are going
to backup/restore ebp in p4_sbr_call if that seems reasonable.
* that leaves us with just three fails in "make check"
2004-12-31 _ <[email protected]>
* did check with "gcc -ansi" for maximum compatibility
strictly_ansi requires to set a few -Ddefines since the
linux glibc headers will not export functions that are
otherwise useful and very widespread even across no-unix systems.
* move memmove and strlcat definitions to os-string
* clean up some of the INC/DEC macro usages
* make p4_TIB to be constant - and fix the warning messages that
it provokes - only one is currently left.
* move intentional compile-time #warn message in dl-def.c to be
visible now only in the runtime execution of ".STATUS".
* remove PFE_MODULE_DIR and add P4_opt.lib_paths that can also
be initialized via PFELIBDIR and add more parts with --lib-path
* using --lib-path-string we can set the build-dir module path in
./test for doing a real `make check` before doing `make install`.
* switch pfe.spec rpm to do "make check-all" instead of "make check"
before install/packaging. That is a strong enforcement as it
enables the make-check for all --with-variants and includes
the new fix for the test/exceptn tests including sigbus things.
* sbr-threading seems to be broken (rpm test succeeds anyway).
2004-12-31 _ <[email protected]>
* introduce os-string.h and os-ctype.h and
replace all memcpy/strcpy/isprint functions with p4_-prefixed ones
* replace P4_INC/P4_ADD with __extension__ macros when using
gcc 3.3 --with-regs since addressof does not work then
* replace COPY / ZERO macros with _p4_copy/_p4_zero macros which
do now use the p4_-prefixed ones from os-string.h
* all those gcc 3.3.x depractation warnings have been silenced down
includes an change in def-macro relating to increment/decrement
pointer values (including p4SP,p4IP) where will also need to
globally replace all usage of P4_INC(P,T) with P4_INC_(T*,P)
and all usages of P4_VAR(T,V) = X with (V = (T) X).
* yes, say a big thankyou to the gcc developers who try to be
aggressivly ansi-C compliant while making the life of the
common C-programmer somewhat harder including places where
it is really really dubious. Sorry for all the inconveniences.
2004-12-30 _ <[email protected]>
* fix autoconf/automake issues in configure.ac
* fix make-check problems related to loadm
we now have p4_loadm_test everywhere
2004-12-24 _ <[email protected]>
* last merge with Tek
* adding all the latest of dnw
2003-07-03 _ <[email protected]>
* the last merge with Tek was wrong, SORRY.
* NVRAM stuff is now included, finally
* need to fix a few doc things
2003-07-01 _ <[email protected]>
* adding a new header-fields.dbk
* reordering docbook entries in doc-index.dbk
* changing all parts into xincludes - need to copynpaste the
entities like PFE and Tek.
2003-06-30 _ <[email protected]>
* need two_constant_RT declared through DEF_RUNTIME to make it
visible to option-ext.c in some variant modes. The file
changed however is def-comp.h
* fixing a few bugs in uppercasing.dbk
2003-06-30 _ <[email protected]>
* dnw did try on darwin, need to add <sys/time.h> include
alongside of <sys/resource.h> on most bsd systems.
* adding -no-cpp-precomp to bin/configure.ac example
2003-06-30 _ <[email protected]>
* merging with latest Tek changes to introduce nvram-style
option processing.
* fixing minor problem for build on solaris
* add doc/uppercasing.dbk
2003-06-27 _ <[email protected]>
* modified configure and pfe/configure.ac to pick up a few
of the newer ax macros
* we do generate pfe/pfe.pc and pfe/pfe-uninstalled.pc now
via an ax macro
* we use the newer ax_set_version_info now which makes for
better computations of stuff
* lib/Makefile.am is a new file, the lib directory shall
hold a few examples now to test external module generation.
* the resp. files have moved from ./Makefile.am to lib/Makefile.am
* no changes to the source code, awaiting merge with Tek changes
* ooops, adding sys/resource.h detection and a call in main-stdc.c
for setrlimit(RLIMIT_STACK) to guard against infinite recursions.
* a bug in pfe/Makefile.am - change incorrect @DYNALINK@ ... -lm
into -lm @DYNALINK@ for each of the three math modules
* need to fix in bug def-restore.h (already in Tek tree?)
* adding installation of pfe.pc
* move to automake 1.5 always and add dist-bzip2
* modify pfe.spec, use bzip2 as main package format, and bundle
the new pfe.pc along...
2003-04-25 _ <[email protected]>
* create bin/ subdirectory
* modify main-sub.* to export C API interface for PFE thread
on hold - for internal scripting.
* create bin/pfe-exec example binary
* try bin/pfe-exec ".s" or bin/pfe-exec "1" "0" "/"
2003-04-26 _ <[email protected]>
* no time lately, the changes from earlier this month have
been done in the tek archive for quite a time.
* update with ac-archive 5.51 macros, esp. subdir build
2003-04-09 _
* added to selftests
* merged with complex-ext (manual editing was needed here)
* the queryapp selftest did not work: we need to setup the
PFE.term always and the APPLICATION-mainloop setting should be
tested before going into stdio-mainloop (and both are set before
the default query-mainloop).
2003-03-23
* automatically adding -no-cpp-precomp on darwin
* introduce DLLFLAGS / DYNALINK separation to accomodate with darwin
2003-03-22 _ <[email protected]>
* add two new ac-macros
PATCH_LIBTOOL_ON_DARWIN_PASS_ALL - fix a libtool-1.4 darwin problem
PATCH_LIBTOOL_CHANGING_CMDS_IFS - fix a libtool-1.4 continuus prob
* rename @libpfe_LIBADD@ into @DYNALINK@ and make the ldso
dependencies of structs.la and complex.la only available
if it is does work on this platform - or even required through
no-undefined like on windows. Create a "--enable-option" for it?
2003-03-20 _ <[email protected]>
* finally - invent a variant that walks the registered wordsets
looking for decompiler routines.
* enhance with emitting the wordset name for a word that was
decompiled with a wordset-lookup for RTCOs
* distribute all RT_SEE codes to their respective P4RUNTIMEs,
this includes builds_RT (core-ext), constant_RT (core-ext),
value_RT (core-ext), two_constant (double-ext),
offset_RT (useful-ext) - only colon_RT and does_RT are left
since they decompile the "rest".
* add knowledge about p4_FXO and p4_SXCO words
* misc-ext is called "Compatibility" now
* in CTC, we compile p4code, in ITC, it is p4xt, and there is
a typedef that covers the right thing: p4xcode. Let's pick
that up in lit_SEE routines in debug-ext and wherever it
has been used so far, esp. for aliases of "ip". Note that
we have global define P4_REGIP_T to make it easier for us.
* oops, usage of P4_TO_CODE in p4_decompile_word was utterly
wrong - it already is a "p4code*".
* the "rest" part of p4_decompile must be a p4xcode* as well.
This changes the global definition of P4_CODE_RUN and
P4_CODE_SEE as well which must return this type.
* we can now decompile CTC code! well, just some minor quirks
are left. E.g. "ENDCASE" did compile an execution-code
being "DROP" (p4_drop) which made each "DROP" to be
decompiled as "ENDCASE". gee... and same for opening
"CASE" which did compile p4_noop.
2003-03-20 _ <[email protected]>
* add code in debug-ext to walk the list of registered runtimes.
* use new macros to register floating-decompiles for FCONSTANT
and FVARIABLE in floating-ext
* remove vocabulary_RT-decompile and use the default visualization.
in the process, I've noticed that vocabulary was errornously
exported as FXco instead of RTco, oops.
* default decompiling is now done for MARKER, DEFER, VOCABULARY,
VARIABLE, 2VARIABLE, FVARIABLE
* again, MARKER was exported errornously as FXco instead of RTco
* adding decompile-routine for ZCONSTANT in complex-ext
* complex.la not rebuild - rewrite pfe/*.am to pick automake syntax
of complex_la_DEPENDENCIES to register renamed-rule. HTH.
2003-03-19 _ <[email protected]>
* the XXCO shall be registered in atexit_wl
* implement P4RUNTIME(p4_runtime) and register RTCOs
to the atexit_wl with that runtime. It allows us
to find all Runtime words later in debug-ext parts.
* MAJOR BUG seen: the test for redefined-word in header_comma
should be on the argument-wordlist, not the CURRENT wordlist.
In the normal case, both are the same which is the reason
there were no problems so far, but the RTco-loading with the
new model did work on the arg-wordlist w/o setting CURRENT.
2003-03-19 _ <[email protected]>
* clean NFA2FF and _FFA from sources
* update obsolete_RT and make some words obsolete now.
* some other minor changes, e.g. t_putchar in term-lib
2003-03-18 _ <[email protected]>
* get rid of term-lib warnings
* get rid of trigraph warning in debug-ext
* remove DVaH wordset-code and execution.
* remove DSeT wordset-code and execution.
* putchar is defined as int putchar(int) - fix wrapper t_putc
in term-lib and get rid of a warning message over there.
* re-indent term-lib
2003-03-18 _ <[email protected]>
* minor fixes to compile without warnings on vxworks
* solaris compiler problem (alignment error): we need to
defeat solaris gcc 2.95 about unrolling memcpy in save_input
2003-03-18 _ <[email protected]>
* rename pfe-words to engine-ext
* forgot to remove debug-error-out in file-sub, fixed now.
* killing some warnings in dict-comp and environ-ext
* do not call cold_system from boot_system, and replace all
references to boot_system with a pair of both functions
* rename to FX (p4_cold_system) and FX (p4_boot_system)
* move wordset-loads of extension-modules from cold_system
into boot_system. Only WORDS(forth) is kept in COLD.
* move greeting messages after cold_system and place
init_accept_lined also past cold_system