From 8f235418ef16fc1341fef9698688c3fdee20b79f Mon Sep 17 00:00:00 2001 From: johnvg Date: Tue, 14 Aug 2012 10:03:06 +0000 Subject: add extendable algebraic data types (merged from iTask branch) git-svn-id: https://svn.cs.ru.nl/repos/clean-compiler/trunk@2149 1f8540f1-abd5-4d5b-9d24-4c5ce8603e2d --- backend/backend.icl | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'backend/backend.icl') diff --git a/backend/backend.icl b/backend/backend.icl index ef0fe09..6161bcb 100644 --- a/backend/backend.icl +++ b/backend/backend.icl @@ -550,6 +550,12 @@ BEAlgebraicType a0 a1 a2 = code { } // void BEAlgebraicType (BEFlatTypeP lhs,BEConstructorListP constructors); +BEExtendableAlgebraicType :: !BEFlatTypeP !BEConstructorListP !BackEnd -> BackEnd; +BEExtendableAlgebraicType a0 a1 a2 = code { + ccall BEExtendableAlgebraicType "pp:V:p" +} +// void BEExtendableAlgebraicType (BEFlatTypeP lhs,BEConstructorListP constructors); + BERecordType :: !Int !BEFlatTypeP !BETypeNodeP !Int !BEFieldListP !BackEnd -> BackEnd; BERecordType a0 a1 a2 a3 a4 a5 = code { ccall BERecordType "IppIp:V:p" -- cgit v1.2.3