[SCM] Lisaac compiler branch, master, updated. lisaac-0.12-672-g74789e9
ontologiae
ontologiae at gmail.com
Mon Nov 29 14:45:46 UTC 2010
The following commit has been merged in the master branch:
commit 74789e95b53fac2a53a65e38a2b3caf785d904a6
Author: ontologiae <ontologiae at gmail.com>
Date: Mon Nov 29 15:44:08 2010 +0100
Adding a flag 'no_os' to avoid signal infrastructure in produced code : this code cannot work without os support
diff --git a/lib/internal/os_support/x86/system/system.li b/lib/internal/os_support/x86/system/system.li
index 56482c2..7eb32a3 100755
--- a/lib/internal/os_support/x86/system/system.li
+++ b/lib/internal/os_support/x86/system/system.li
@@ -466,7 +466,9 @@ Section Public
//
- make <-
- (
+ (
+
+ "System".print;
new_interrupt exception_01 to 01h;
new_interrupt exception_0d to 0Dh;
diff --git a/make.lip b/make.lip
index cab872e..28c5769 100644
--- a/make.lip
+++ b/make.lip
@@ -367,6 +367,12 @@ Section Public
(
is_coverage := TRUE;
);
+
+ - no_os <-
+ (
+ is_no_os := TRUE;
+ );
+
//
// Information.
diff --git a/src/any.li b/src/any.li
index 47ffad4..a843386 100644
--- a/src/any.li
+++ b/src/any.li
@@ -129,6 +129,7 @@ Section Public
- is_quiet:BOOLEAN;
- is_warn_null :BOOLEAN <- ( is_warn_null := LIP_CODE.has_flag "warn-null" );
+ - is_no_os :BOOLEAN <- (is_no_os := LIP_CODE.has_flag slot_no_os);
- backend:BACKEND := BACKEND;
diff --git a/src/lisaac.li b/src/lisaac.li
index 4c4d4a2..d852daf 100644
--- a/src/lisaac.li
+++ b/src/lisaac.li
@@ -715,7 +715,7 @@ Section Public
\#define _LARGEFILE64_SOURCE\n";
// ANSI argument command.
- (debug_level_option != 0).if {
+ ((debug_level_option != 0) && {! is_no_os}).if {
output_decl.append "#include <signal.h>\n";
};
is_coverage.if {
@@ -763,7 +763,7 @@ Section Public
(is_java).if_false {
(debug_level_option != 0).if {
output_code.append "/* Debug Manager */\n";
- (is_ansi).if {
+ ((is_ansi) && {! is_no_os}).if {
output_code.append "void interrupt_signal(int sig);\n";
};
output_code.append
diff --git a/src/tools/alias_str.li b/src/tools/alias_str.li
index d02b678..2c99e32 100644
--- a/src/tools/alias_str.li
+++ b/src/tools/alias_str.li
@@ -180,6 +180,7 @@ Section Public
- slot_get_string :STRING_CONSTANT := "get_string";
- slot_is_cop :STRING_CONSTANT := "is_cop";
- slot_add_flag :STRING_CONSTANT := "add_flag";
+ - slot_no_os :STRING_CONSTANT := "no_os";
- c_void :STRING_CONSTANT := "void";
- c_struct :STRING_CONSTANT := "struct __";
--
Lisaac compiler
More information about the Lisaac-commits
mailing list