aboutsummaryrefslogtreecommitdiff
path: root/backendC/CleanCompilerSources/instructions.c
diff options
context:
space:
mode:
authorjohnvg2007-01-12 14:40:14 +0000
committerjohnvg2007-01-12 14:40:14 +0000
commit67d44abee2ad0dd969f92981cd2a23560d62533a (patch)
treeff51d4affabce41b7cf9138e74d740d661d8a521 /backendC/CleanCompilerSources/instructions.c
parentadd passing Reals using foreign export (diff)
add support for strings in foreign export
git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@1637 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d
Diffstat (limited to 'backendC/CleanCompilerSources/instructions.c')
-rw-r--r--backendC/CleanCompilerSources/instructions.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/backendC/CleanCompilerSources/instructions.c b/backendC/CleanCompilerSources/instructions.c
index 603f9b8..b3a5f23 100644
--- a/backendC/CleanCompilerSources/instructions.c
+++ b/backendC/CleanCompilerSources/instructions.c
@@ -3679,6 +3679,14 @@ static void print_foreign_export_type (TypeNode type)
} else if (symbol_p->symb_kind==real_type){
FPrintF (OutFile,"R");
return;
+ } else if (symbol_p->symb_kind==unboxed_array_type){
+ TypeNode type_node_p;
+
+ type_node_p=type->type_node_arguments->type_arg_node;
+ if (!type_node_p->type_node_is_var && type_node_p->type_node_symbol->symb_kind==char_type){
+ FPrintF (OutFile,"S");
+ return;
+ }
} else if (symbol_p->symb_kind==tuple_type){
TypeArgs type_arg_p;