Coder Social home page Coder Social logo

camllight / camllight Goto Github PK

View Code? Open in Web Editor NEW
57.0 57.0 17.0 4.55 MB

The Caml Light implementation of the Caml language

Home Page: http://caml.inria.fr/caml-light/

Makefile 4.77% C 26.20% Shell 0.54% Perl 0.32% TeX 4.36% Groff 0.41% Emacs Lisp 2.33% OCaml 53.01% Logos 0.02% Standard ML 0.19% Objective-C 0.23% Assembly 5.24% OpenEdge ABL 0.06% M 0.37% C++ 1.93% Batchfile 0.01%

camllight's People

Contributors

damiendoligez avatar maranget avatar pierreweis avatar xavierleroy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

camllight's Issues

Fails to build on Fedora 26 with error `Cannot find file pr_type.zi. Please compile pr_type.mli first.`

Trying to build camllight from this repository fails with the error Cannot find file pr_type.zi. Please compile pr_type.mli first., whereas FBoisson's fork builds properly. I didn't modify the Makefile in sources/src/, and I think it has exactly the same content as the one in FBoisson's repo. I tried building pr_type.mli first as recommended, without success.

make config (click arrow to reveal)
cd ../config; sh autoconf "gcc  "
Checking the sizes of integers and pointers...
Wow! A 64 bit architecture!
schar.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
The char type is signed. Good!
endian.c:4:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
endian.c: In function ‘main’:
endian.c:20:7: warning: implicit declaration of function ‘strcmp’ [-Wimplicit-function-declaration]
   if (strcmp(p, bigendian) == 0)
       ^~~~~~
This is a little-endian architecture.
align.c: In function ‘speedtest’:
align.c:73:3: warning: implicit declaration of function ‘alarm’ [-Wimplicit-function-declaration]
   alarm(1);
   ^~~~~
align.c: At top level:
align.c:83:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
This architecture has no alignment constraints.
dblalign.c:22:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
Doubles can be word-aligned.
bytecopy.c:11:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
Function "memmove" is provided and handles overlapping moves correctly.
bytecopy.c:11:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
Function "bcopy" is provided and handles overlapping moves correctly.
bytecopy.c:11:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main()
 ^~~~
Function "memcpy" is provided and handles overlapping moves correctly.
sighandler.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
sighandler.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
sighandler.c:6:7: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types]
Sorry, I can't determine the return type for signal handlers.
I'm assuming "void". If this seems to cause errors,
try to change "sighandler_return_type" in s.h
signals.c: In function ‘main’:
signals.c:42:8: warning: implicit declaration of function ‘getpid’; did you mean ‘fgetpos’? [-Wimplicit-function-declaration]
   kill(getpid(), IGNSIG);
        ^~~~~~
        fgetpos
Signals have the BSD semantics.
rename() found.
You have BSD sockets.
unistd.h found.
dirent.h found.
lockf() found.
mkfifo() found.
getcwd() found.
getwd() found.
getpriority() found.
utime() found.
utimes() found.
dup2() found.
fchmod() found.
truncate() found.
select() found.
symlink() found.
wait3() found.
waitpid() found.
getgroups.c: In function ‘main’:
getgroups.c:9:7: warning: implicit declaration of function ‘getgroups’ [-Wimplicit-function-declaration]
   if (getgroups(NGROUPS, gidset) == -1) return 1;
       ^~~~~~~~~
getgroups() found.
POSIX termios found.
async_io.c: In function ‘main’:
async_io.c:23:7: warning: implicit declaration of function ‘pipe’; did you mean ‘popen’? [-Wimplicit-function-declaration]
   if (pipe(p) == -1) return 1;
       ^~~~
       popen
async_io.c:28:27: warning: implicit declaration of function ‘getpid’; did you mean ‘getenv’? [-Wimplicit-function-declaration]
   fcntl(p[OUT], F_SETOWN, getpid());
                           ^~~~~~
                           getenv
async_io.c:29:10: warning: implicit declaration of function ‘fork’ [-Wimplicit-function-declaration]
   switch(fork()) {
          ^~~~
async_io.c:33:5: warning: implicit declaration of function ‘close’; did you mean ‘pclose’? [-Wimplicit-function-declaration]
     close(p[OUT]);
     ^~~~~
     pclose
async_io.c:34:5: warning: implicit declaration of function ‘write’; did you mean ‘fwrite’? [-Wimplicit-function-declaration]
     write(p[IN], "x", 1);
     ^~~~~
     fwrite
async_io.c:35:5: warning: implicit declaration of function ‘sleep’ [-Wimplicit-function-declaration]
     sleep(1);
     ^~~~~
async_io.c:39:11: warning: implicit declaration of function ‘wait’; did you mean ‘main’? [-Wimplicit-function-declaration]
     while(wait(NULL) == -1 && errno == EINTR) /*nothing*/;
           ^~~~
           main
Asynchronous I/O are supported.
setitimer() found.
gethostname() found.
uname() found.
gettimeofday() found.
strerror() found.
make world (click arrow to reveal)
cd runtime; make CC="gcc" OPTS="" LIBS="" all
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/home/vogier/src/camllight/sources/src/runtime'
awk -f ../tools/make-jumptbl instruct.h > jumptbl.h
gcc -O2 -fno-strict-aliasing  -I..   -c -o interp.o interp.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o misc.o misc.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o stacks.o stacks.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o fix_code.o fix_code.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o main.o main.c
main.c:137:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main(argc, argv)
 ^~~~
gcc -O2 -fno-strict-aliasing  -I..   -c -o fail.o fail.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o signals.o signals.c
signals.c: In function ‘execute_signal’:
signals.c:22:3: warning: implicit declaration of function ‘callback’; did you mean ‘calloc’? [-Wimplicit-function-declaration]
   callback(clos, Val_int(signal_number));
   ^~~~~~~~
   calloc
gcc -O2 -fno-strict-aliasing  -I..   -c -o debugcom.o debugcom.c
debugcom.c: In function ‘open_connection’:
debugcom.c:99:20: warning: implicit declaration of function ‘getpid’; did you mean ‘getword’? [-Wimplicit-function-declaration]
   putword(dbg_out, getpid());
                    ^~~~~~
                    getword
debugcom.c: In function ‘close_connection’:
debugcom.c:107:3: warning: implicit declaration of function ‘close’; did you mean ‘pclose’? [-Wimplicit-function-declaration]
   close(dbg_socket);
   ^~~~~
   pclose
debugcom.c: In function ‘debugger_init’:
debugcom.c:135:40: warning: implicit declaration of function ‘inet_addr’; did you mean ‘h_addr’? [-Wimplicit-function-declaration]
     sock_addr.s_inet.sin_addr.s_addr = inet_addr(address);
                                        ^~~~~~~~~
                                        h_addr
debugcom.c: In function ‘debugger’:
debugcom.c:185:25: warning: ‘return’ with no value, in function returning non-void
   if (dbg_socket == -1) return;  /* Not connected to a debugger. */
                         ^~~~~~
debugcom.c:173:5: note: declared here
 int debugger(event)
     ^~~~~~~~
debugcom.c:240:11: warning: implicit declaration of function ‘fork’ [-Wimplicit-function-declaration]
       i = fork();
           ^~~~
debugcom.c:264:7: warning: implicit declaration of function ‘wait’; did you mean ‘exit’? [-Wimplicit-function-declaration]
       wait(NULL);
       ^~~~
       exit
gcc -O2 -fno-strict-aliasing  -I..   -c -o freelist.o freelist.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o major_gc.o major_gc.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o minor_gc.o minor_gc.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o memory.o memory.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o alloc.o alloc.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o roots.o roots.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o compare.o compare.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o ints.o ints.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o floats.o floats.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o str.o str.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o io.o io.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o extern.o extern.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o externcp.o externcp.c
externcp.c: In function ‘emit_compact’:
externcp.c:85:24: warning: implicit declaration of function ‘string_length’; did you mean ‘String_tag’? [-Wimplicit-function-declaration]
         mlsize_t len = string_length(v);
                        ^~~~~~~~~~~~~
                        String_tag
externcp.c: In function ‘extern_compact_val’:
externcp.c:143:15: warning: implicit declaration of function ‘pos_out’ [-Wimplicit-function-declaration]
   start_loc = pos_out(chan);
               ^~~~~~~
externcp.c:162:3: warning: implicit declaration of function ‘seek_out’ [-Wimplicit-function-declaration]
   seek_out(chan, start_loc);
   ^~~~~~~~
gcc -O2 -fno-strict-aliasing  -I..   -c -o intern.o intern.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o interncp.o interncp.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o hash.o hash.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o sys.o sys.c
sys.c: In function ‘sys_error’:
sys.c:72:19: warning: implicit declaration of function ‘string_length’; did you mean ‘strnlen’? [-Wimplicit-function-declaration]
     int arg_len = string_length(arg);
                   ^~~~~~~~~~~~~
                   strnlen
sys.c: In function ‘sys_close’:
sys.c:135:7: warning: implicit declaration of function ‘close’; did you mean ‘clock’? [-Wimplicit-function-declaration]
   if (close(Int_val(fd)) != 0) sys_error(SYS_ERROR_NO_ARG);
       ^~~~~
       clock
sys.c: In function ‘sys_remove’:
sys.c:143:9: warning: implicit declaration of function ‘unlink’; did you mean ‘unix’? [-Wimplicit-function-declaration]
   ret = unlink(String_val(name));
         ^~~~~~
         unix
sys.c: In function ‘sys_rename’:
sys.c:152:7: warning: implicit declaration of function ‘rename’; did you mean ‘sys_rename’? [-Wimplicit-function-declaration]
   if (rename(String_val(oldname), String_val(newname)) != 0)
       ^~~~~~
       sys_rename
sys.c: In function ‘sys_chdir’:
sys.c:163:7: warning: implicit declaration of function ‘chdir’ [-Wimplicit-function-declaration]
   if (chdir(String_val(dirname)) != 0) sys_error(dirname);
       ^~~~~
sys.c: In function ‘searchpath’:
sys.c:307:9: warning: implicit declaration of function ‘access’ [-Wimplicit-function-declaration]
     if (access(fullname, 1) == 0 &&
         ^~~~~~
gcc -O2 -fno-strict-aliasing  -I..   -c -o meta.o meta.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o parsing.o parsing.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o lexing.o lexing.c
lexing.c: In function ‘get_next_char’:
lexing.c:27:5: warning: implicit declaration of function ‘callback’; did you mean ‘calloc’? [-Wimplicit-function-declaration]
     callback(lexbuf->refill_buff, (value) lexbuf);
     ^~~~~~~~
     calloc
gcc -O2 -fno-strict-aliasing  -I..   -c -o gc_ctrl.o gc_ctrl.c
gc_ctrl.c: In function ‘init_gc’:
gc_ctrl.c:210:3: warning: implicit declaration of function ‘init_c_roots’ [-Wimplicit-function-declaration]
   init_c_roots ();
   ^~~~~~~~~~~~
sed -n -e '/\/\* ML \*\//s/.* \([a-z0-9_][a-z0-9_]*\) *(.*/\1/p' \
                compare.c extern.c externcp.c floats.c gc_ctrl.c hash.c intern.c interncp.c interp.c ints.c io.c lexing.c meta.c parsing.c str.c sys.c > primitives2
sh -c 'if cmp -s primitives primitives2; \
        then rm primitives2; \
        else mv primitives2 primitives; \
        fi'
(echo '#include "mlvalues.h"'; \
 echo '#include "prims.h"'; \
 sed -e 's/.*/extern value &();/' primitives; \
 echo 'c_primitive cprim[] = {'; \
 sed -e 's/.*/  &,/' primitives; \
 echo '  0 };'; \
         echo 'char * names_of_cprim[] = {'; \
 sed -e 's/.*/  "&",/' primitives; \
 echo '  0 };') > prims.c
gcc -O2 -fno-strict-aliasing  -I..   -c -o prims.o prims.c
gcc -O2 -fno-strict-aliasing  -I.. -o camlrun prims.o interp.o misc.o stacks.o fix_code.o main.o fail.o signals.o debugcom.o freelist.o major_gc.o minor_gc.o memory.o alloc.o roots.o compare.o ints.o floats.o str.o io.o extern.o externcp.o intern.o interncp.o hash.o sys.o meta.o parsing.o lexing.o gc_ctrl.o  -lm
rm -f libcaml.a
ar rc libcaml.a interp.o misc.o stacks.o fix_code.o main.o fail.o signals.o debugcom.o freelist.o major_gc.o minor_gc.o memory.o alloc.o roots.o compare.o ints.o floats.o str.o io.o extern.o externcp.o intern.o interncp.o hash.o sys.o meta.o parsing.o lexing.o gc_ctrl.o
if test -f /usr/bin/ranlib -o -f /bin/ranlib; then ranlib libcaml.a; else true; fi
make[1]: Leaving directory '/home/vogier/src/camllight/sources/src/runtime'
cp runtime/camlrun .
cd yacc; make CC="gcc" OPTS="" all
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/home/vogier/src/camllight/sources/src/yacc'
gcc -O -DNDEBUG    -c -o closure.o closure.c
closure.c:11:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_EFF()
 ^~~~~~~
closure.c: In function ‘set_EFF’:
closure.c:39:5: warning: implicit declaration of function ‘reflexive_transitive_closure’ [-Wimplicit-function-declaration]
     reflexive_transitive_closure(EFF, nvars);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
closure.c: At top level:
closure.c:47:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_first_derives()
 ^~~~~~~~~~~~~~~~~
closure.c:104:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 closure(nucleus, n)
 ^~~~~~~
closure.c:179:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 finalize_closure()
 ^~~~~~~~~~~~~~~~
gcc -O -DNDEBUG    -c -o error.o error.c
error.c:6:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 fatal(msg)
 ^~~~~
error.c: In function ‘fatal’:
error.c:10:5: warning: implicit declaration of function ‘done’ [-Wimplicit-function-declaration]
     done(2);
     ^~~~
error.c: At top level:
error.c:14:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 no_space()
 ^~~~~~~~
error.c:21:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 open_error(filename)
 ^~~~~~~~~~
error.c:29:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unexpected_EOF()
 ^~~~~~~~~~~~~~
error.c:37:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_pos(st_line, st_cptr)
 ^~~~~~~~~
error.c: In function ‘print_pos’:
error.c:43:23: warning: ‘return’ with no value, in function returning non-void
     if (st_line == 0) return;
                       ^~~~~~
error.c:37:1: note: declared here
 print_pos(st_line, st_cptr)
 ^~~~~~~~~
error.c: At top level:
error.c:64:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 syntax_error(st_lineno, st_line, st_cptr)
 ^~~~~~~~~~~~
error.c:76:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unterminated_comment(c_lineno, c_line, c_cptr)
 ^~~~~~~~~~~~~~~~~~~~
error.c:88:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unterminated_string(s_lineno, s_line, s_cptr)
 ^~~~~~~~~~~~~~~~~~~
error.c:100:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unterminated_text(t_lineno, t_line, t_cptr)
 ^~~~~~~~~~~~~~~~~
error.c:112:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unterminated_union(u_lineno, u_line, u_cptr)
 ^~~~~~~~~~~~~~~~~~
error.c:124:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 over_unionized(u_cptr)
 ^~~~~~~~~~~~~~
error.c:134:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 illegal_tag(t_lineno, t_line, t_cptr)
 ^~~~~~~~~~~
error.c:146:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 illegal_character(c_cptr)
 ^~~~~~~~~~~~~~~~~
error.c:156:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 used_reserved(s)
 ^~~~~~~~~~~~~
error.c:165:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 tokenized_start(s)
 ^~~~~~~~~~~~~~~
error.c:174:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 retyped_warning(s)
 ^~~~~~~~~~~~~~~
error.c:182:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 reprec_warning(s)
 ^~~~~~~~~~~~~~
error.c:190:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 revalued_warning(s)
 ^~~~~~~~~~~~~~~~
error.c:198:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 terminal_start(s)
 ^~~~~~~~~~~~~~
error.c:206:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 too_many_entries()
 ^~~~~~~~~~~~~~~~
error.c:214:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 no_grammar()
 ^~~~~~~~~~
error.c:222:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 terminal_lhs(s_lineno)
 ^~~~~~~~~~~~
error.c:231:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 prec_redeclared()
 ^~~~~~~~~~~~~~~
error.c:238:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unterminated_action(a_lineno, a_line, a_cptr)
 ^~~~~~~~~~~~~~~~~~~
error.c:250:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 dollar_warning(a_lineno, i)
 ^~~~~~~~~~~~~~
error.c:259:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 dollar_error(a_lineno, a_line, a_cptr)
 ^~~~~~~~~~~~
error.c:271:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 untyped_lhs()
 ^~~~~~~~~~~
error.c:279:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 untyped_rhs(i, s)
 ^~~~~~~~~~~
error.c:289:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unknown_rhs(i)
 ^~~~~~~~~~~
error.c:297:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 illegal_token_ref(i, name)
 ^~~~~~~~~~~~~~~~~
error.c:307:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 default_action_error()
 ^~~~~~~~~~~~~~~~~~~~
error.c:316:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 undefined_goal(s)
 ^~~~~~~~~~~~~~
error.c:324:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 undefined_symbol_warning(s)
 ^~~~~~~~~~~~~~~~~~~~~~~~
error.c:331:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 entry_without_type(s)
 ^~~~~~~~~~~~~~~~~~
gcc -O -DNDEBUG    -c -o lalr.o lalr.c
lalr.c:37:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 lalr()
 ^~~~
lalr.c: In function ‘lalr’:
lalr.c:41:5: warning: implicit declaration of function ‘set_state_table’; did you mean ‘setstate_r’? [-Wimplicit-function-declaration]
     set_state_table();
     ^~~~~~~~~~~~~~~
     setstate_r
lalr.c:42:5: warning: implicit declaration of function ‘set_accessing_symbol’ [-Wimplicit-function-declaration]
     set_accessing_symbol();
     ^~~~~~~~~~~~~~~~~~~~
lalr.c:43:5: warning: implicit declaration of function ‘set_shift_table’ [-Wimplicit-function-declaration]
     set_shift_table();
     ^~~~~~~~~~~~~~~
lalr.c:44:5: warning: implicit declaration of function ‘set_reduction_table’ [-Wimplicit-function-declaration]
     set_reduction_table();
     ^~~~~~~~~~~~~~~~~~~
lalr.c:45:5: warning: implicit declaration of function ‘set_maxrhs’ [-Wimplicit-function-declaration]
     set_maxrhs();
     ^~~~~~~~~~
lalr.c:46:5: warning: implicit declaration of function ‘initialize_LA’ [-Wimplicit-function-declaration]
     initialize_LA();
     ^~~~~~~~~~~~~
lalr.c:47:5: warning: implicit declaration of function ‘set_goto_map’ [-Wimplicit-function-declaration]
     set_goto_map();
     ^~~~~~~~~~~~
lalr.c:48:5: warning: implicit declaration of function ‘initialize_F’; did you mean ‘initstate_r’? [-Wimplicit-function-declaration]
     initialize_F();
     ^~~~~~~~~~~~
     initstate_r
lalr.c:49:5: warning: implicit declaration of function ‘build_relations’ [-Wimplicit-function-declaration]
     build_relations();
     ^~~~~~~~~~~~~~~
lalr.c:50:5: warning: implicit declaration of function ‘compute_FOLLOWS’ [-Wimplicit-function-declaration]
     compute_FOLLOWS();
     ^~~~~~~~~~~~~~~
lalr.c:51:5: warning: implicit declaration of function ‘compute_lookaheads’ [-Wimplicit-function-declaration]
     compute_lookaheads();
     ^~~~~~~~~~~~~~~~~~
lalr.c: At top level:
lalr.c:56:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_state_table()
 ^~~~~~~~~~~~~~~
lalr.c:67:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_accessing_symbol()
 ^~~~~~~~~~~~~~~~~~~~
lalr.c:78:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_shift_table()
 ^~~~~~~~~~~~~~~
lalr.c:89:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_reduction_table()
 ^~~~~~~~~~~~~~~~~~~
lalr.c:100:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_maxrhs()
 ^~~~~~~~~~
lalr.c:128:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 initialize_LA()
 ^~~~~~~~~~~~~
lalr.c:165:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_goto_map()
 ^~~~~~~~~~~~
lalr.c: In function ‘set_goto_map’:
lalr.c:188:6: warning: implicit declaration of function ‘fatal’; did you mean ‘atol’? [-Wimplicit-function-declaration]
      fatal("too many gotos");
      ^~~~~
      atol
lalr.c: At top level:
lalr.c:263:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 initialize_F()
 ^~~~~~~~~~~~
lalr.c: In function ‘initialize_F’:
lalr.c:326:3: warning: implicit declaration of function ‘digraph’; did you mean ‘isgraph’? [-Wimplicit-function-declaration]
   digraph(reads);
   ^~~~~~~
   isgraph
lalr.c: At top level:
lalr.c:340:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 build_relations()
 ^~~~~~~~~~~~~~~
lalr.c: In function ‘build_relations’:
lalr.c:391:4: warning: implicit declaration of function ‘add_lookback_edge’ [-Wimplicit-function-declaration]
    add_lookback_edge(stateno, *rulep, i);
    ^~~~~~~~~~~~~~~~~
lalr.c: At top level:
lalr.c:432:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 add_lookback_edge(stateno, ruleno, gotono)
 ^~~~~~~~~~~~~~~~~
lalr.c:517:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 compute_FOLLOWS()
 ^~~~~~~~~~~~~~~
lalr.c:523:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 compute_lookaheads()
 ^~~~~~~~~~~~~~~~~~
lalr.c:557:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 digraph(relation)
 ^~~~~~~
lalr.c: In function ‘digraph’:
lalr.c:575:2: warning: implicit declaration of function ‘traverse’; did you mean ‘transpose’? [-Wimplicit-function-declaration]
  traverse(i);
  ^~~~~~~~
  transpose
lalr.c: At top level:
lalr.c:584:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 traverse(i)
 ^~~~~~~~
gcc -O -DNDEBUG    -c -o lr0.o lr0.c
lr0.c:33:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 allocate_itemsets()
 ^~~~~~~~~~~~~~~~~
lr0.c:75:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 allocate_storage()
 ^~~~~~~~~~~~~~~~
lr0.c:84:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 append_states()
 ^~~~~~~~~~~~~
lr0.c:113:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_storage()
 ^~~~~~~~~~~~
lr0.c:126:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 generate_states()
 ^~~~~~~~~~~~~~~
lr0.c: In function ‘generate_states’:
lr0.c:131:5: warning: implicit declaration of function ‘set_first_derives’ [-Wimplicit-function-declaration]
     set_first_derives();
     ^~~~~~~~~~~~~~~~~
lr0.c:132:5: warning: implicit declaration of function ‘initialize_states’; did you mean ‘generate_states’? [-Wimplicit-function-declaration]
     initialize_states();
     ^~~~~~~~~~~~~~~~~
     generate_states
lr0.c:136:2: warning: implicit declaration of function ‘closure’; did you mean ‘pclose’? [-Wimplicit-function-declaration]
  closure(this_state->items, this_state->nitems);
  ^~~~~~~
  pclose
lr0.c:137:2: warning: implicit declaration of function ‘save_reductions’ [-Wimplicit-function-declaration]
  save_reductions();
  ^~~~~~~~~~~~~~~
lr0.c:138:2: warning: implicit declaration of function ‘new_itemsets’; did you mean ‘new_state’? [-Wimplicit-function-declaration]
  new_itemsets();
  ^~~~~~~~~~~~
  new_state
lr0.c:142:6: warning: implicit declaration of function ‘save_shifts’ [-Wimplicit-function-declaration]
      save_shifts();
      ^~~~~~~~~~~
lr0.c:147:5: warning: implicit declaration of function ‘finalize_closure’ [-Wimplicit-function-declaration]
     finalize_closure();
     ^~~~~~~~~~~~~~~~
lr0.c: At top level:
lr0.c:218:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 initialize_states()
 ^~~~~~~~~~~~~~~~~
lr0.c: In function ‘initialize_states’:
lr0.c:229:17: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
     if (p == 0) no_space();
                 ^~~~~~~~
                 isspace
lr0.c: At top level:
lr0.c:245:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 new_itemsets()
 ^~~~~~~~~~~~
lr0.c: In function ‘new_state’:
lr0.c:296:2: warning: implicit declaration of function ‘fatal’; did you mean ‘atol’? [-Wimplicit-function-declaration]
  fatal("too many states");
  ^~~~~
  atol
lr0.c: At top level:
lr0.c:322:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 show_cores()
 ^~~~~~~~~~
lr0.c:357:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 show_ritems()
 ^~~~~~~~~~~
lr0.c:367:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 show_rrhs()
 ^~~~~~~~~
lr0.c:378:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 show_shifts()
 ^~~~~~~~~~~
lr0.c:396:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 save_shifts()
 ^~~~~~~~~~~
lr0.c:430:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 save_reductions()
 ^~~~~~~~~~~~~~~
lr0.c:479:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_derives()
 ^~~~~~~~~~~
lr0.c:509:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_derives()
 ^~~~~~~~~~~~
lr0.c:538:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_nullable()
 ^~~~~~~~~~~~
lr0.c:587:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_nullable()
 ^~~~~~~~~~~~~
lr0.c:593:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 lr0()
 ^~~
gcc -O -DNDEBUG    -c -o main.o main.c
main.c:77:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 done(k)
 ^~~~
main.c: In function ‘done’:
main.c:80:45: warning: implicit declaration of function ‘unlink’; did you mean ‘unix’? [-Wimplicit-function-declaration]
     if (action_file) { fclose(action_file); unlink(action_file_name); }
                                             ^~~~~~
                                             unix
main.c: At top level:
main.c:101:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 set_signals()
 ^~~~~~~~~~~
main.c:118:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 usage()
 ^~~~~
main.c:125:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 getargs(argc, argv)
 ^~~~~~~
main.c: In function ‘getargs’:
main.c:142:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
main.c:125:1: note: declared here
 getargs(argc, argv)
 ^~~~~~~
main.c:198:29: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
       if (file_prefix == 0) no_space();
                             ^~~~~~~~
                             isspace
main.c: At top level:
main.c:227:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 create_file_names()
 ^~~~~~~~~~~~~~~~~
main.c:314:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 open_files()
 ^~~~~~~~~~
main.c: In function ‘open_files’:
main.c:322:13: warning: implicit declaration of function ‘open_error’; did you mean ‘perror’? [-Wimplicit-function-declaration]
             open_error(input_file_name);
             ^~~~~~~~~~
             perror
main.c: At top level:
main.c:374:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main(argc, argv)
 ^~~~
main.c: In function ‘main’:
main.c:381:5: warning: implicit declaration of function ‘reader’; did you mean ‘rand_r’? [-Wimplicit-function-declaration]
     reader();
     ^~~~~~
     rand_r
main.c:382:5: warning: implicit declaration of function ‘lr0’ [-Wimplicit-function-declaration]
     lr0();
     ^~~
main.c:383:5: warning: implicit declaration of function ‘lalr’; did you mean ‘labs’? [-Wimplicit-function-declaration]
     lalr();
     ^~~~
     labs
main.c:384:5: warning: implicit declaration of function ‘make_parser’; did you mean ‘make_bucket’? [-Wimplicit-function-declaration]
     make_parser();
     ^~~~~~~~~~~
     make_bucket
main.c:385:5: warning: implicit declaration of function ‘verbose’ [-Wimplicit-function-declaration]
     verbose();
     ^~~~~~~
main.c:386:5: warning: implicit declaration of function ‘output’ [-Wimplicit-function-declaration]
     output();
     ^~~~~~
gcc -O -DNDEBUG    -c -o mkpar.o mkpar.c
mkpar.c:23:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 make_parser()
 ^~~~~~~~~~~
mkpar.c: In function ‘make_parser’:
mkpar.c:31:5: warning: implicit declaration of function ‘find_final_state’; did you mean ‘initstate’? [-Wimplicit-function-declaration]
     find_final_state();
     ^~~~~~~~~~~~~~~~
     initstate
mkpar.c:32:5: warning: implicit declaration of function ‘remove_conflicts’ [-Wimplicit-function-declaration]
     remove_conflicts();
     ^~~~~~~~~~~~~~~~
mkpar.c:33:5: warning: implicit declaration of function ‘unused_rules’ [-Wimplicit-function-declaration]
     unused_rules();
     ^~~~~~~~~~~~
mkpar.c:34:32: warning: implicit declaration of function ‘total_conflicts’ [-Wimplicit-function-declaration]
     if (SRtotal + RRtotal > 0) total_conflicts();
                                ^~~~~~~~~~~~~~~
mkpar.c:35:5: warning: implicit declaration of function ‘defreds’ [-Wimplicit-function-declaration]
     defreds();
     ^~~~~~~
mkpar.c: At top level:
mkpar.c:153:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 find_final_state()
 ^~~~~~~~~~~~~~~~
mkpar.c:170:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 unused_rules()
 ^~~~~~~~~~~~
mkpar.c: In function ‘unused_rules’:
mkpar.c:176:26: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
     if (rules_used == 0) no_space();
                          ^~~~~~~~
                          isspace
mkpar.c: At top level:
mkpar.c:202:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 remove_conflicts()
 ^~~~~~~~~~~~~~~~
mkpar.c:277:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 total_conflicts()
 ^~~~~~~~~~~~~~~
mkpar.c:326:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 defreds()
 ^~~~~~~
mkpar.c:335:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_action_row(p)
 ^~~~~~~~~~~~~~~
mkpar.c:348:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_parser()
 ^~~~~~~~~~~
gcc -O -DNDEBUG    -c -o output.o output.c
output.c:20:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output()
 ^~~~~~
output.c: In function ‘output’:
output.c:24:3: warning: implicit declaration of function ‘free_itemsets’ [-Wimplicit-function-declaration]
   free_itemsets();
   ^~~~~~~~~~~~~
output.c:25:3: warning: implicit declaration of function ‘free_shifts’ [-Wimplicit-function-declaration]
   free_shifts();
   ^~~~~~~~~~~
output.c:26:3: warning: implicit declaration of function ‘free_reductions’ [-Wimplicit-function-declaration]
   free_reductions();
   ^~~~~~~~~~~~~~~
output.c:27:3: warning: implicit declaration of function ‘write_section’ [-Wimplicit-function-declaration]
   write_section(header);
   ^~~~~~~~~~~~~
output.c:28:3: warning: implicit declaration of function ‘output_stored_text’ [-Wimplicit-function-declaration]
   output_stored_text();
   ^~~~~~~~~~~~~~~~~~
output.c:29:3: warning: implicit declaration of function ‘output_transl’ [-Wimplicit-function-declaration]
   output_transl();
   ^~~~~~~~~~~~~
output.c:30:3: warning: implicit declaration of function ‘output_rule_data’ [-Wimplicit-function-declaration]
   output_rule_data();
   ^~~~~~~~~~~~~~~~
output.c:31:3: warning: implicit declaration of function ‘output_yydefred’ [-Wimplicit-function-declaration]
   output_yydefred();
   ^~~~~~~~~~~~~~~
output.c:32:3: warning: implicit declaration of function ‘output_actions’ [-Wimplicit-function-declaration]
   output_actions();
   ^~~~~~~~~~~~~~
output.c:33:3: warning: implicit declaration of function ‘free_parser’ [-Wimplicit-function-declaration]
   free_parser();
   ^~~~~~~~~~~
output.c:34:3: warning: implicit declaration of function ‘output_debug’; did you mean ‘output’? [-Wimplicit-function-declaration]
   output_debug();
   ^~~~~~~~~~~~
   output
output.c:42:3: warning: implicit declaration of function ‘output_semantic_actions’ [-Wimplicit-function-declaration]
   output_semantic_actions();
   ^~~~~~~~~~~~~~~~~~~~~~~
output.c:46:3: warning: implicit declaration of function ‘output_entries’ [-Wimplicit-function-declaration]
   output_entries();
   ^~~~~~~~~~~~~~
output.c:47:3: warning: implicit declaration of function ‘output_trailing_text’ [-Wimplicit-function-declaration]
   output_trailing_text();
   ^~~~~~~~~~~~~~~~~~~~
output.c: At top level:
output.c:68:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_rule_data()
 ^~~~~~~~~~~~~~~~
output.c:116:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_yydefred()
 ^~~~~~~~~~~~~~~
output.c:143:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_actions()
 ^~~~~~~~~~~~~~
output.c: In function ‘output_actions’:
output.c:152:5: warning: implicit declaration of function ‘token_actions’; did you mean ‘output_actions’? [-Wimplicit-function-declaration]
     token_actions();
     ^~~~~~~~~~~~~
     output_actions
output.c:158:5: warning: implicit declaration of function ‘goto_actions’; did you mean ‘output_actions’? [-Wimplicit-function-declaration]
     goto_actions();
     ^~~~~~~~~~~~
     output_actions
output.c:163:5: warning: implicit declaration of function ‘sort_actions’; did you mean ‘output_actions’? [-Wimplicit-function-declaration]
     sort_actions();
     ^~~~~~~~~~~~
     output_actions
output.c:164:5: warning: implicit declaration of function ‘pack_table’ [-Wimplicit-function-declaration]
     pack_table();
     ^~~~~~~~~~
output.c:165:5: warning: implicit declaration of function ‘output_base’; did you mean ‘output_char’? [-Wimplicit-function-declaration]
     output_base();
     ^~~~~~~~~~~
     output_char
output.c:166:5: warning: implicit declaration of function ‘output_table’; did you mean ‘output_short’? [-Wimplicit-function-declaration]
     output_table();
     ^~~~~~~~~~~~
     output_short
output.c:167:5: warning: implicit declaration of function ‘output_check’; did you mean ‘output_char’? [-Wimplicit-function-declaration]
     output_check();
     ^~~~~~~~~~~~
     output_char
output.c: At top level:
output.c:171:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 token_actions()
 ^~~~~~~~~~~~~
output.c:255:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 goto_actions()
 ^~~~~~~~~~~~
output.c: In function ‘goto_actions’:
output.c:261:9: warning: implicit declaration of function ‘default_goto’ [-Wimplicit-function-declaration]
     k = default_goto(start_symbol + 1);
         ^~~~~~~~~~~~
output.c:265:5: warning: implicit declaration of function ‘save_column’ [-Wimplicit-function-declaration]
     save_column(start_symbol + 1, k);
     ^~~~~~~~~~~
output.c: At top level:
output.c:326:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 save_column(symbol, default_state)
 ^~~~~~~~~~~
output.c: In function ‘save_column’:
output.c:348:21: warning: ‘return’ with no value, in function returning non-void
     if (count == 0) return;
                     ^~~~~~
output.c:326:1: note: declared here
 save_column(symbol, default_state)
 ^~~~~~~~~~~
output.c: At top level:
output.c:368:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 sort_actions()
 ^~~~~~~~~~~~
output.c:403:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 pack_table()
 ^~~~~~~~~~
output.c: In function ‘pack_table’:
output.c:424:10: warning: implicit declaration of function ‘matching_vector’ [-Wimplicit-function-declaration]
  state = matching_vector(i);
          ^~~~~~~~~~~~~~~
output.c:427:14: warning: implicit declaration of function ‘pack_vector’ [-Wimplicit-function-declaration]
      place = pack_vector(i);
              ^~~~~~~~~~~
output.c: In function ‘pack_vector’:
output.c:540:7: warning: implicit declaration of function ‘fatal’; did you mean ‘atol’? [-Wimplicit-function-declaration]
       fatal("maximum table size exceeded");
       ^~~~~
       atol
output.c:545:19: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
   if (table == 0) no_space();
                   ^~~~~~~~
                   isspace
output.c: At top level:
output.c:584:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_base()
 ^~~~~~~~~~~
output.c:655:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_table()
 ^~~~~~~~~~~~
output.c:687:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_check()
 ^~~~~~~~~~~~
output.c:716:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_transl()
 ^~~~~~~~~~~~~
output.c:729:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_stored_text()
 ^~~~~~~~~~~~~~~~~~
output.c: In function ‘output_stored_text’:
output.c:737:2: warning: implicit declaration of function ‘open_error’; did you mean ‘perror’? [-Wimplicit-function-declaration]
  open_error(text_file_name);
  ^~~~~~~~~~
  perror
output.c:740:2: warning: ‘return’ with no value, in function returning non-void
  return;
  ^~~~~~
output.c:729:1: note: declared here
 output_stored_text()
 ^~~~~~~~~~~~~~~~~~
output.c: At top level:
output.c:756:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_debug()
 ^~~~~~~~~~~~
output.c:760:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_trailing_text()
 ^~~~~~~~~~~~~~~~~~~~
output.c: In function ‘output_trailing_text’:
output.c:766:2: warning: ‘return’ with no value, in function returning non-void
  return;
  ^~~~~~
output.c:760:1: note: declared here
 output_trailing_text()
 ^~~~~~~~~~~~~~~~~~~~
output.c:775:6: warning: ‘return’ with no value, in function returning non-void
      return;
      ^~~~~~
output.c:760:1: note: declared here
 output_trailing_text()
 ^~~~~~~~~~~~~~~~~~~~
output.c: At top level:
output.c:817:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 copy_file(file, file_name)
 ^~~~~~~~~
output.c: In function ‘copy_file’:
output.c:830:2: warning: ‘return’ with no value, in function returning non-void
  return;
  ^~~~~~
output.c:817:1: note: declared here
 copy_file(file, file_name)
 ^~~~~~~~~
output.c: At top level:
output.c:853:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_semantic_actions()
 ^~~~~~~~~~~~~~~~~~~~~~~
output.c:858:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_entries()
 ^~~~~~~~~~~~~~
output.c:863:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_itemsets()
 ^~~~~~~~~~~~~
output.c:876:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_shifts()
 ^~~~~~~~~~~
output.c:890:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_reductions()
 ^~~~~~~~~~~~~~~
gcc -O -DNDEBUG    -c -o reader.o reader.c
reader.c:38:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 cachec(c)
 ^~~~~~
reader.c: In function ‘cachec’:
reader.c:46:25: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
         if (cache == 0) no_space();
                         ^~~~~~~~
                         isspace
reader.c: At top level:
reader.c:53:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 get_line()
 ^~~~~~~~
reader.c: In function ‘get_line’:
reader.c:64:9: warning: ‘return’ with no value, in function returning non-void
         return;
         ^~~~~~
reader.c:53:1: note: declared here
 get_line()
 ^~~~~~~~
reader.c:80:39: warning: ‘return’ with no value, in function returning non-void
         if (c == '\n') { cptr = line; return; }
                                       ^~~~~~
reader.c:53:1: note: declared here
 get_line()
 ^~~~~~~~
reader.c:93:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:53:1: note: declared here
 get_line()
 ^~~~~~~~
reader.c: At top level:
reader.c:117:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 skip_comment()
 ^~~~~~~~~~~~
reader.c: In function ‘skip_comment’:
reader.c:132:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:117:1: note: declared here
 skip_comment()
 ^~~~~~~~~~~~
reader.c:138:17: warning: implicit declaration of function ‘unterminated_comment’ [-Wimplicit-function-declaration]
                 unterminated_comment(st_lineno, st_line, st_cptr);
                 ^~~~~~~~~~~~~~~~~~~~
reader.c: In function ‘keyword’:
reader.c:267:5: warning: implicit declaration of function ‘syntax_error’; did you mean ‘strerror’? [-Wimplicit-function-declaration]
     syntax_error(lineno, line, t_cptr);
     ^~~~~~~~~~~~
     strerror
reader.c: At top level:
reader.c:272:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 copy_ident()
 ^~~~~~~~~~
reader.c: In function ‘copy_ident’:
reader.c:278:19: warning: implicit declaration of function ‘unexpected_EOF’ [-Wimplicit-function-declaration]
     if (c == EOF) unexpected_EOF();
                   ^~~~~~~~~~~~~~
reader.c:288:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:272:1: note: declared here
 copy_ident()
 ^~~~~~~~~~
reader.c:295:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:272:1: note: declared here
 copy_ident()
 ^~~~~~~~~~
reader.c: At top level:
reader.c:301:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 copy_text()
 ^~~~~~~~~
reader.c: In function ‘copy_text’:
reader.c:315:13: warning: implicit declaration of function ‘unterminated_text’ [-Wimplicit-function-declaration]
             unterminated_text(t_lineno, t_line, t_cptr);
             ^~~~~~~~~~~~~~~~~
reader.c:350:21: warning: implicit declaration of function ‘unterminated_string’ [-Wimplicit-function-declaration]
                     unterminated_string(s_lineno, s_line, s_cptr);
                     ^~~~~~~~~~~~~~~~~~~
reader.c:406:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:301:1: note: declared here
 copy_text()
 ^~~~~~~~~
reader.c: At top level:
reader.c:418:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 copy_union()
 ^~~~~~~~~~
reader.c: In function ‘copy_union’:
reader.c:427:20: warning: implicit declaration of function ‘over_unionized’ [-Wimplicit-function-declaration]
     if (unionized) over_unionized(cptr - 6);
                    ^~~~~~~~~~~~~~
reader.c:448:24: warning: implicit declaration of function ‘unterminated_union’ [-Wimplicit-function-declaration]
         if (line == 0) unterminated_union(u_lineno, u_line, u_cptr);
                        ^~~~~~~~~~~~~~~~~~
reader.c:460:11: warning: ‘return’ with no value, in function returning non-void
           return;
           ^~~~~~
reader.c:418:1: note: declared here
 copy_union()
 ^~~~~~~~~~
reader.c: In function ‘get_literal’:
reader.c:598:34: warning: implicit declaration of function ‘illegal_character’ [-Wimplicit-function-declaration]
                 if (n > MAXCHAR) illegal_character(c_cptr);
                                  ^~~~~~~~~~~~~~~~~
reader.c: In function ‘get_name’:
reader.c:724:29: warning: implicit declaration of function ‘used_reserved’; did you mean ‘is_reserved’? [-Wimplicit-function-declaration]
     if (is_reserved(cache)) used_reserved(cache);
                             ^~~~~~~~~~~~~
                             is_reserved
reader.c: At top level:
reader.c:789:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 declare_tokens(assoc)
 ^~~~~~~~~~~~~~
reader.c: In function ‘declare_tokens’:
reader.c:815:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:789:1: note: declared here
 declare_tokens(assoc)
 ^~~~~~~~~~~~~~
reader.c:817:25: warning: implicit declaration of function ‘tokenized_start’ [-Wimplicit-function-declaration]
         if (bp == goal) tokenized_start(bp->name);
                         ^~~~~~~~~~~~~~~
reader.c:823:17: warning: implicit declaration of function ‘retyped_warning’ [-Wimplicit-function-declaration]
                 retyped_warning(bp->name);
                 ^~~~~~~~~~~~~~~
reader.c:834:17: warning: implicit declaration of function ‘reprec_warning’ [-Wimplicit-function-declaration]
                 reprec_warning(bp->name);
                 ^~~~~~~~~~~~~~
reader.c:847:17: warning: implicit declaration of function ‘revalued_warning’ [-Wimplicit-function-declaration]
                 revalued_warning(bp->name);
                 ^~~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:856:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 declare_types()
 ^~~~~~~~~~~~~
reader.c: In function ‘declare_types’:
reader.c:875:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:856:1: note: declared here
 declare_types()
 ^~~~~~~~~~~~~
reader.c: At top level:
reader.c:884:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 declare_start()
 ^~~~~~~~~~~~~
reader.c: In function ‘declare_start’:
reader.c:892:60: warning: ‘return’ with no value, in function returning non-void
       if (!isalpha(c) && c != '_' && c != '.' && c != '$') return;
                                                            ^~~~~~
reader.c:884:1: note: declared here
 declare_start()
 ^~~~~~~~~~~~~
reader.c:896:9: warning: implicit declaration of function ‘terminal_start’; did you mean ‘declare_start’? [-Wimplicit-function-declaration]
         terminal_start(bp->name);
         ^~~~~~~~~~~~~~
         declare_start
reader.c:899:9: warning: implicit declaration of function ‘too_many_entries’ [-Wimplicit-function-declaration]
         too_many_entries();
         ^~~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:904:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 read_declarations()
 ^~~~~~~~~~~~~~~~~
reader.c: In function ‘read_declarations’:
reader.c:920:13: warning: ‘return’ with no value, in function returning non-void
             return;
             ^~~~~~
reader.c:904:1: note: declared here
 read_declarations()
 ^~~~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:952:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 output_token_type()
 ^~~~~~~~~~~~~~~~~
reader.c:971:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 initialize_grammar()
 ^~~~~~~~~~~~~~~~~~
reader.c:1002:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 expand_items()
 ^~~~~~~~~~~~
reader.c:1010:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 expand_rules()
 ^~~~~~~~~~~~
reader.c:1022:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 advance_to_start()
 ^~~~~~~~~~~~~~~~
reader.c: In function ‘advance_to_start’:
reader.c:1037:13: warning: implicit declaration of function ‘no_grammar’; did you mean ‘_Pragma’? [-Wimplicit-function-declaration]
             no_grammar();
             ^~~~~~~~~~
             _Pragma
reader.c:1067:5: warning: implicit declaration of function ‘start_rule’; did you mean ‘strtoull’? [-Wimplicit-function-declaration]
     start_rule(bp, s_lineno);
     ^~~~~~~~~~
     strtoull
reader.c: At top level:
reader.c:1072:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 start_rule(bp, s_lineno)
 ^~~~~~~~~~
reader.c: In function ‘start_rule’:
reader.c:1077:9: warning: implicit declaration of function ‘terminal_lhs’ [-Wimplicit-function-declaration]
         terminal_lhs(s_lineno);
         ^~~~~~~~~~~~
reader.c: At top level:
reader.c:1087:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 end_rule()
 ^~~~~~~~
reader.c: In function ‘end_rule’:
reader.c:1089:27: warning: implicit declaration of function ‘default_action_error’ [-Wimplicit-function-declaration]
     if (!last_was_action) default_action_error();
                           ^~~~~~~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:1099:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 insert_empty_rule()
 ^~~~~~~~~~~~~~~~~
reader.c:1128:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 add_symbol()
 ^~~~~~~~~~
reader.c: In function ‘add_symbol’:
reader.c:1146:9: warning: ‘return’ with no value, in function returning non-void
         return;
         ^~~~~~
reader.c:1128:1: note: declared here
 add_symbol()
 ^~~~~~~~~~
reader.c: At top level:
reader.c:1159:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 copy_action()
 ^~~~~~~~~~~
reader.c: In function ‘copy_action’:
reader.c:1199:15: warning: implicit declaration of function ‘unknown_rhs’ [-Wimplicit-function-declaration]
               unknown_rhs(i);
               ^~~~~~~~~~~
reader.c:1205:17: warning: implicit declaration of function ‘illegal_token_ref’ [-Wimplicit-function-declaration]
                 illegal_token_ref(i, item->name);
                 ^~~~~~~~~~~~~~~~~
reader.c:1234:7: warning: ‘return’ with no value, in function returning non-void
       return;
       ^~~~~~
reader.c:1159:1: note: declared here
 copy_action()
 ^~~~~~~~~~~
reader.c:1244:9: warning: implicit declaration of function ‘unterminated_action’ [-Wimplicit-function-declaration]
         unterminated_action(a_lineno, a_line, a_cptr);
         ^~~~~~~~~~~~~~~~~~~
reader.c: In function ‘mark_symbol’:
reader.c:1360:9: warning: implicit declaration of function ‘prec_redeclared’ [-Wimplicit-function-declaration]
         prec_redeclared();
         ^~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:1368:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 read_grammar()
 ^~~~~~~~~~~~
reader.c:1401:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_tags()
 ^~~~~~~~~
reader.c: In function ‘free_tags’:
reader.c:1405:25: warning: ‘return’ with no value, in function returning non-void
     if (tag_table == 0) return;
                         ^~~~~~
reader.c:1401:1: note: declared here
 free_tags()
 ^~~~~~~~~
reader.c: At top level:
reader.c:1416:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 pack_names()
 ^~~~~~~~~~
reader.c:1441:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 check_symbols()
 ^~~~~~~~~~~~~
reader.c: In function ‘check_symbols’:
reader.c:1446:9: warning: implicit declaration of function ‘undefined_goal’ [-Wimplicit-function-declaration]
         undefined_goal(goal->name);
         ^~~~~~~~~~~~~~
reader.c:1452:13: warning: implicit declaration of function ‘undefined_symbol_warning’ [-Wimplicit-function-declaration]
             undefined_symbol_warning(bp->name);
             ^~~~~~~~~~~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:1459:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 pack_symbols()
 ^~~~~~~~~~~~
reader.c:1595:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 make_goal()
 ^~~~~~~~~
reader.c: In function ‘make_goal’:
reader.c:1620:9: warning: implicit declaration of function ‘entry_without_type’ [-Wimplicit-function-declaration]
         entry_without_type(bp->name);
         ^~~~~~~~~~~~~~~~~~
reader.c: At top level:
reader.c:1641:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 pack_grammar()
 ^~~~~~~~~~~~
reader.c:1700:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_grammar()
 ^~~~~~~~~~~~~
reader.c: In function ‘print_grammar’:
reader.c:1706:17: warning: ‘return’ with no value, in function returning non-void
     if (!vflag) return;
                 ^~~~~~
reader.c:1700:1: note: declared here
 print_grammar()
 ^~~~~~~~~~~~~
reader.c: At top level:
reader.c:1736:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 reader()
 ^~~~~~
reader.c: In function ‘reader’:
reader.c:1738:5: warning: implicit declaration of function ‘create_symbol_table’ [-Wimplicit-function-declaration]
     create_symbol_table();
     ^~~~~~~~~~~~~~~~~~~
reader.c:1743:5: warning: implicit declaration of function ‘free_symbol_table’ [-Wimplicit-function-declaration]
     free_symbol_table();
     ^~~~~~~~~~~~~~~~~
reader.c:1749:5: warning: implicit declaration of function ‘free_symbols’; did you mean ‘pack_symbols’? [-Wimplicit-function-declaration]
     free_symbols();
     ^~~~~~~~~~~~
     pack_symbols
gcc -O -DNDEBUG    -c -o skeleton.o skeleton.c
skeleton.c:28:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 write_section(section)
 ^~~~~~~~~~~~~
gcc -O -DNDEBUG    -c -o symtab.o symtab.c
symtab.c: In function ‘make_bucket’:
symtab.c:35:18: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
     if (bp == 0) no_space();
                  ^~~~~~~~
                  isspace
symtab.c: At top level:
symtab.c:80:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 create_symbol_table()
 ^~~~~~~~~~~~~~~~~~~
symtab.c:100:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_symbol_table()
 ^~~~~~~~~~~~~~~~~
symtab.c:107:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 free_symbols()
 ^~~~~~~~~~~~
gcc -O -DNDEBUG    -c -o verbose.o verbose.c
verbose.c:7:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 verbose()
 ^~~~~~~
verbose.c: In function ‘verbose’:
verbose.c:11:17: warning: ‘return’ with no value, in function returning non-void
     if (!vflag) return;
                 ^~~~~~
verbose.c:7:1: note: declared here
 verbose()
 ^~~~~~~
verbose.c:14:26: warning: implicit declaration of function ‘no_space’; did you mean ‘isspace’? [-Wimplicit-function-declaration]
     if (null_rules == 0) no_space();
                          ^~~~~~~~
                          isspace
verbose.c:17:2: warning: implicit declaration of function ‘print_state’; did you mean ‘initstate’? [-Wimplicit-function-declaration]
  print_state(i);
  ^~~~~~~~~~~
  initstate
verbose.c:21:2: warning: implicit declaration of function ‘log_unused’ [-Wimplicit-function-declaration]
  log_unused();
  ^~~~~~~~~~
verbose.c:23:2: warning: implicit declaration of function ‘log_conflicts’ [-Wimplicit-function-declaration]
  log_conflicts();
  ^~~~~~~~~~~~~
verbose.c: At top level:
verbose.c:31:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 log_unused()
 ^~~~~~~~~~
verbose.c:50:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 log_conflicts()
 ^~~~~~~~~~~~~
verbose.c:78:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_state(state)
 ^~~~~~~~~~~
verbose.c: In function ‘print_state’:
verbose.c:84:2: warning: implicit declaration of function ‘print_conflicts’; did you mean ‘log_conflicts’? [-Wimplicit-function-declaration]
  print_conflicts(state);
  ^~~~~~~~~~~~~~~
  log_conflicts
verbose.c:86:5: warning: implicit declaration of function ‘print_core’; did you mean ‘print_state’? [-Wimplicit-function-declaration]
     print_core(state);
     ^~~~~~~~~~
     print_state
verbose.c:87:5: warning: implicit declaration of function ‘print_nulls’; did you mean ‘print_state’? [-Wimplicit-function-declaration]
     print_nulls(state);
     ^~~~~~~~~~~
     print_state
verbose.c:88:5: warning: implicit declaration of function ‘print_actions’; did you mean ‘print_state’? [-Wimplicit-function-declaration]
     print_actions(state);
     ^~~~~~~~~~~~~
     print_state
verbose.c: At top level:
verbose.c:92:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_conflicts(state)
 ^~~~~~~~~~~~~~~
verbose.c:140:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_core(state)
 ^~~~~~~~~~
verbose.c:176:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_nulls(state)
 ^~~~~~~~~~~
verbose.c:220:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_actions(stateno)
 ^~~~~~~~~~~~~
verbose.c: In function ‘print_actions’:
verbose.c:233:2: warning: implicit declaration of function ‘print_shifts’; did you mean ‘print_state’? [-Wimplicit-function-declaration]
  print_shifts(p);
  ^~~~~~~~~~~~
  print_state
verbose.c:234:2: warning: implicit declaration of function ‘print_reductions’; did you mean ‘print_actions’? [-Wimplicit-function-declaration]
  print_reductions(p, defred[stateno]);
  ^~~~~~~~~~~~~~~~
  print_actions
verbose.c:242:6: warning: implicit declaration of function ‘print_gotos’; did you mean ‘print_actions’? [-Wimplicit-function-declaration]
      print_gotos(stateno);
      ^~~~~~~~~~~
      print_actions
verbose.c: At top level:
verbose.c:247:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_shifts(p)
 ^~~~~~~~~~~~
verbose.c:272:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_reductions(p, defred)
 ^~~~~~~~~~~~~~~~
verbose.c:310:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 print_gotos(stateno)
 ^~~~~~~~~~~
gcc -O -DNDEBUG    -c -o warshall.o warshall.c
warshall.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 transitive_closure(R, n)
 ^~~~~~~~~~~~~~~~~~
warshall.c:56:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 reflexive_transitive_closure(R, n)
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -O -DNDEBUG  -o camlyacc closure.o error.o lalr.o lr0.o main.o mkpar.o output.o reader.o skeleton.o symtab.o verbose.o warshall.o
main.o: In function `create_file_names':
main.c:(.text+0x598): warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp'
make[1]: Leaving directory '/home/vogier/src/camllight/sources/src/yacc'
cp yacc/camlyacc .
cd lib; make CPP="/usr/bin/cpp -P -traditional -Dunix" all
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/home/vogier/src/camllight/sources/src/lib'
../camlrun ../camlcomp -stdlib . -O none -g -W arg.mli
../camlrun ../camlcomp -stdlib . -O none -g -W bool.mli
../camlrun ../camlcomp -stdlib . -O none -g -W char.mli
../camlrun ../camlcomp -stdlib . -O none -g -W string.mli
../camlrun ../camlcomp -stdlib . -O none -g -W vect.mli
../camlrun ../camlcomp -stdlib . -O none -g -W eq.mli
../camlrun ../camlcomp -stdlib . -O none -g -W exc.mli
../camlrun ../camlcomp -stdlib . -O none -g -W fchar.mli
../camlrun ../camlcomp -stdlib . -O none -g -W sys.mli
../camlrun ../camlcomp -stdlib . -O none -g -W filename.mli
../camlrun ../camlcomp -stdlib . -O none -g -W float.mli
../camlrun ../camlcomp -stdlib . -O none -g -W fstring.mli
../camlrun ../camlcomp -stdlib . -O none -g -W fvect.mli
../camlrun ../camlcomp -stdlib . -O none -g -W hashtbl.mli
../camlrun ../camlcomp -stdlib . -O none -g -W int.mli
../camlrun ../camlcomp -stdlib . -O none -g -W io.mli
../camlrun ../camlcomp -stdlib . -O none -g -W obj.mli
../camlrun ../camlcomp -stdlib . -O none -g -W lexing.mli
../camlrun ../camlcomp -stdlib . -O none -g -W list.mli
../camlrun ../camlcomp -stdlib . -O none -g -W pair.mli
../camlrun ../camlcomp -stdlib . -O none -g -W parsing.mli
../camlrun ../camlcomp -stdlib . -O none -g -W printexc.mli
../camlrun ../camlcomp -stdlib . -O none -g -W ref.mli
../camlrun ../camlcomp -stdlib . -O none -g -W sort.mli
../camlrun ../camlcomp -stdlib . -O none -g -W printf.mli
../camlrun ../camlcomp -stdlib . -O none -g -W stream.mli
../camlrun ../camlcomp -stdlib . -O none -g -W stack.mli
../camlrun ../camlcomp -stdlib . -O none -g -W queue.mli
../camlrun ../camlcomp -stdlib . -O none -g -W random.mli
../camlrun ../camlcomp -stdlib . -O none -g -W genlex.mli
../camlrun ../camlcomp -stdlib . -O none -g -W baltree.mli
../camlrun ../camlcomp -stdlib . -O none -g -W set.mli
../camlrun ../camlcomp -stdlib . -O none -g -W map.mli
../camlrun ../camlcomp -stdlib . -O none -g -W gc.mli
../camlrun ../camlcomp -stdlib . -O none -g -W format.mli
../camlrun ../camlcomp -stdlib . -O none -g -W bool.ml
../camlrun ../camlcomp -stdlib . -O none -g -W eq.ml
../camlrun ../camlcomp -stdlib . -O none -g -W exc.ml
../camlrun ../camlcomp -stdlib . -O none -g -W int.ml
../camlrun ../camlcomp -stdlib . -O none -g -W fstring.ml
../camlrun ../camlcomp -stdlib . -O none -g -W string.ml
../camlrun ../camlcomp -stdlib . -O none -g -W fchar.ml
../camlrun ../camlcomp -stdlib . -O none -g -W char.ml
../camlrun ../camlcomp -stdlib . -O none -g -W float.ml
../camlrun ../camlcomp -stdlib . -O none -g -W list.ml
../camlrun ../camlcomp -stdlib . -O none -g -W fvect.ml
../camlrun ../camlcomp -stdlib . -O none -g -W vect.ml
../camlrun ../camlcomp -stdlib . -O none -g -W io.ml
../camlrun ../camlcomp -stdlib . -O none -g -W pair.ml
../camlrun ../camlcomp -stdlib . -O none -g -W arg.ml
/usr/bin/cpp -P -traditional -Dunix filename.mlp > filename.ml
../camlrun ../camlcomp -stdlib . -O none -g -W filename.ml
../camlrun ../camlcomp -stdlib . -O none -g -W hashtbl.ml
../camlrun ../camlcomp -stdlib . -O none -g -W lexing.ml
../camlrun ../camlcomp -stdlib . -O none -g -W iparsing.mli
../camlrun ../camlcomp -stdlib . -O none -g -W parsing.ml
../camlrun ../camlcomp -stdlib . -O none -g -W printexc.ml
../camlrun ../camlcomp -stdlib . -O none -g -W sort.ml
../camlrun ../camlcomp -stdlib . -O none -g -W printf.ml
../camlrun ../camlcomp -stdlib . -O none -g -W stream.ml
../camlrun ../camlcomp -stdlib . -O none -g -W stack.ml
../camlrun ../camlcomp -stdlib . -O none -g -W queue.ml
../camlrun ../camlcomp -stdlib . -O none -g -W format.ml
../camlrun ../camlcomp -stdlib . -O none -g -W random.ml
/usr/bin/cpp -P -traditional -Dunix genlex.mlp > genlex.ml
../camlrun ../camlcomp -stdlib . -O none -g -W genlex.ml
../camlrun ../camlcomp -stdlib . -O none -g -W baltree.ml
../camlrun ../camlcomp -stdlib . -O none -g -W set.ml
../camlrun ../camlcomp -stdlib . -O none -g -W map.ml
../camlrun ../camlcomp -stdlib . -O none -g -W gc.ml
../camlrun ../camllibr -o stdlib.zo bool.zo eq.zo exc.zo int.zo fstring.zo string.zo fchar.zo char.zo float.zo list.zo fvect.zo vect.zo io.zo pair.zo arg.zo filename.zo hashtbl.zo lexing.zo parsing.zo printexc.zo sort.zo printf.zo stream.zo stack.zo queue.zo format.zo random.zo genlex.zo baltree.zo set.zo map.zo gc.zo
make[1]: Leaving directory '/home/vogier/src/camllight/sources/src/lib'
cd compiler; make CPP="/usr/bin/cpp -P -traditional -Dunix" all
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/home/vogier/src/camllight/sources/src/compiler'
/usr/bin/cpp -P -traditional -Dunix config.mlp > config.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast config.mli
../camlrun ../camlcomp -stdlib ../lib -W -O fast config.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast misc.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast interntl.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast const.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast prim.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast globals.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast lambda.ml
/usr/bin/cpp -P -traditional -Dunix location.mlp > location.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast location.mli
../camlrun ../camlcomp -stdlib ../lib -W -O fast location.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast syntax.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast modules.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast builtins.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast types.ml
../camlrun ../camlcomp -stdlib ../lib -W -O fast pr_type.ml
Cannot find file pr_type.zi. Please compile pr_type.mli first.
make[1]: *** [Makefile:57: pr_type.zo] Error 2
make[1]: Leaving directory '/home/vogier/src/camllight/sources/src/compiler'
make: *** [Makefile:65: world] Error 2

Toplevel crashes as soon as one ask for a few million bytes of memory

Submitted on Mantis #5621 on 2012-05-24:

Steps To Reproduce:

> Caml Light version 0.80

#type t = L of int | N of t*t;;
let rec copy t = match t with L i -> L i | N(t1,t2) -> N(copy t1, copy t2);;
let rec double t = N(copy t,copy t);;
let rec pow n = match n with 0 -> L 0 | k -> double (pow (k-1));;
pow 3;;
let t = pow 25;;
Type t defined.
#copy : t -> t = <fun>
#double : t -> t = <fun>
#pow : int -> t = <fun>
#- : t = N (N (N (L 0, L 0), N (L 0, L 0)), N (N (L 0, L 0), N (L 0, L 0)))
#*** glibc detected *** /usr/bin/camlrun: free(): invalid pointer: 0x0884d000 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb7602704]
/lib/tls/i686/cmov/libc.so.6(cfree+0x96)[0xb76046b6]
/usr/bin/camlrun[0x804e506]
/usr/bin/camlrun[0x804de47]
/usr/bin/camlrun[0x804de96]
/usr/bin/camlrun[0x804de96]
/usr/bin/camlrun[0x804eb04]
/usr/bin/camlrun[0x804df92]
/usr/bin/camlrun[0x804b5b5]
/usr/bin/camlrun[0x8049731]
/usr/bin/camlrun[0x804c85d]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe5)[0xb75a9775]
/usr/bin/camlrun[0x8048ff1]
======= Memory map: ========
08048000-08054000 r-xp 00000000 08:02 1480782 /usr/bin/camlrun
08054000-08055000 rw-p 0000b000 08:02 1480782 /usr/bin/camlrun
08055000-08056000 rw-p 08055000 00:00 0
08807000-0888e000 rw-p 08807000 00:00 0 [heap]
96f00000-96f21000 rw-p 96f00000 00:00 0
96f21000-97000000 ---p 96f21000 00:00 0
97024000-975d0000 rw-p 97024000 00:00 0
975e2000-975ef000 r-xp 00000000 08:02 1455628 /lib/libgcc_s.so.1
975ef000-975f0000 r--p 0000c000 08:02 1455628 /lib/libgcc_s.so.1
975f0000-975f1000 rw-p 0000d000 08:02 1455628 /lib/libgcc_s.so.1
975f1000-b7593000 rw-p 975f1000 00:00 0
b7593000-b76ef000 r-xp 00000000 08:02 1464981 /lib/tls/i686/cmov/libc-2.9.so
b76ef000-b76f0000 ---p 0015c000 08:02 1464981 /lib/tls/i686/cmov/libc-2.9.so
b76f0000-b76f2000 r--p 0015c000 08:02 1464981 /lib/tls/i686/cmov/libc-2.9.so
b76f2000-b76f3000 rw-p 0015e000 08:02 1464981 /lib/tls/i686/cmov/libc-2.9.so
b76f3000-b76f6000 rw-p b76f3000 00:00 0
b76f6000-b771a000 r-xp 00000000 08:02 1464985 /lib/tls/i686/cmov/libm-2.9.so
b771a000-b771b000 r--p 00023000 08:02 1464985 /lib/tls/i686/cmov/libm-2.9.so
b771b000-b771c000 rw-p 00024000 08:02 1464985 /lib/tls/i686/cmov/libm-2.9.so
b7732000-b7734000 rw-p b7732000 00:00 0
b7734000-b7735000 r-xp b7734000 00:00 0 [vdso]
b7735000-b7751000 r-xp 00000000 08:02 1455606 /lib/ld-2.9.so
b7751000-b7752000 r--p 0001b000 08:02 1455606 /lib/ld-2.9.so
b7752000-b7753000 rw-p 0001c000 08:02 1455606 /lib/ld-2.9.so
bfee8000-bfefd000 rw-p bffeb000 00:00 0 [stack]

Process caml-toplevel abandon

Additional Information:

$ uname -a
Linux b313-p08 2.6.28-19-generic 0000061-Ubuntu SMP Wed May 26 23:35:15 UTC 2010 i686 GNU/Linux
$ dpkg -l camllight
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements
|/ Err?=(aucune)/H=à garder/besoin Réinstallation/X=les deux (État,Err: majuscule=mauvais)
||/ Nom Version Description
+++-==============-==============-============================================
ii camllight 0.80 Camllight 0.80

Caml light crashes on syntactic error when using emacs

When trying to run caml light binaries from emacs under Windows (running from "shell" command in emacs for example), everything works fine until you type a syntactically incorrect program. Then the toplevel crashes.

This issue doesn't exist in ocaml. I could successfully reproduce it every time I tried to use caml light, and I think that it is basically related o a configuration problem. However, I was unable to find any documentation about it.

Thanks!
CFP.

To reproduce:

Follow installation steps at
http://createsoftware.users.sourceforge.net/index.php?ref=articles&id=Creating%20a%20portable%20emacs%20installation,%20and%20a%20portable%20Caml%20or%20OCaml%20installation.txt
to install Caml light for windows along with emacs.

Use Ctrl+Alt+X to send a syntactically incorrect phrase to the camllight toplevel.

Caml light toplevel crashes with
"Process caml-toplevel exited abnormally with code 2"

License Change Request

Can you please change the license of the compiler to something more flexible to allow Camllight to improve ?

Caml-Light is fair a simple compiler and can be embedded pretty easily. The license of the compiler (old Q public license) is very restrictive in this regard. Any other open source license such as BSD/MIT/Appache or even GPL2 with static linking is very appreciated.

Is there any reason the Q public license is still used ? Correct me if I am wrong, but Caml Light doesn't seem of value to INRIA anymore, where everything has moved toward OCaml and Coq.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.