mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-16 01:43:35 +00:00
46 lines
1.0 KiB
Mathematica
46 lines
1.0 KiB
Mathematica
%---------------------------------------------------------------------------%
|
|
% vim: ts=4 sw=4 et ft=mercury
|
|
%---------------------------------------------------------------------------%
|
|
|
|
:- module needs_init.
|
|
|
|
:- interface.
|
|
|
|
:- import_module io.
|
|
|
|
:- pred main(io::di, io::uo) is det.
|
|
|
|
:- implementation.
|
|
|
|
:- pred init_modules(io::di, io::uo) is det.
|
|
:- pragma import(init_modules(di, uo), "do_init_modules").
|
|
|
|
main(!IO) :-
|
|
init_modules(!IO),
|
|
io.write_string("world!\n", !IO).
|
|
|
|
:- pred hello(io::di, io::uo) is det.
|
|
:- pragma export(hello(di, uo), "run_at_init_time_init").
|
|
|
|
hello(!IO) :-
|
|
io.write_string("hello, ", !IO).
|
|
|
|
:- pragma c_header_code("
|
|
#include <stdio.h>
|
|
void run_at_init_time_init_type_tables(void);
|
|
void run_at_init_time_write_out_proc_statics(FILE *);
|
|
void run_at_init_time_init_debugger(void);
|
|
").
|
|
|
|
:- pragma c_code("
|
|
|
|
/*
|
|
INIT run_at_init_time
|
|
ENDINIT
|
|
*/
|
|
|
|
void run_at_init_time_init_type_tables() {}
|
|
void run_at_init_time_write_out_proc_statics(FILE *f) {}
|
|
void run_at_init_time_init_debugger() {}
|
|
").
|