Files
xomb-bare-bones/kernel/runtime/std/moduleinit.d
wilkie dd1faf4d30 This is the current build for XOmB Bare Bones.
Since GDC is for all reasonable purposes dead in development, LDC is the current way to go. In this build, LDC is used to compile any D language code. You will not need a naked-compile of GDC to compile anymore.

We will no longer maintain GDC as a first priority.

Please check the wiki first for build instructions, check the README for a link.

Signed-off-by: The XOmB Overlord <overlord@xomb.org>
2009-02-24 08:57:10 +08:00

71 lines
1.2 KiB
D

// Written in the D programming language
module std.moduleinit;
//debug = 1;
//private
//{
// import object;
//}
/*
enum
{
MIctorstart = 1, // we've started constructing it
MIctordone = 2, // finished construction
MIstandalone = 4, // module ctor does not depend on other module
// ctors being done first
MIhasictor = 8, // has ictor member
}
*/
// Start of the module linked list
struct ModuleReference
{
ModuleReference* next;
ModuleInfo mod;
}
extern(C) ModuleReference* _Dmodule_ref;
//ModuleInfo[] _moduleinfo_dtors;
uint _moduleinfo_dtors_i;
// Register termination function pointers
//extern (C) int _fatexit(void *);
/*************************************
* Initialize the modules.
*/
extern (C) void _moduleCtor()
{
}
/**********************************
* Destruct the modules.
*/
// Starting the name with "_STD" means under linux a pointer to the
// function gets put in the .dtors segment.
extern (C) void _moduleDtor()
{
}
/**********************************
* Run unit tests.
*/
extern (C) void _moduleUnitTests()
{
}
/**********************************
* Run unit tests.
*/
extern (C) void _moduleIndependentCtors()
{
}