From 496f69dba2fdf1720b40349932fcdecd444107c3 Mon Sep 17 00:00:00 2001 From: Daniel Llorens Date: Thu, 11 Nov 2021 15:47:42 +0100 Subject: Support C99 complex types in (system foreign) * libguile/foreign.h (SCM_FOREIGN_TYPE_COMPLEX_FLOAT, SCM_FOREIGN_TYPE_COMPLEX_DOUBLE): New enums. * module/system/foreign.scm (complex-float, complex-double): Export new types. (make-c-struct, parse-c-struct): Support the new types. * libguile/foreign.c (complex-float, complex-double): Define new types. (alignof, sizeof, pack, unpack): Support the new types. * test-suite/tests/foreign.test: Test. --- NEWS | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'NEWS') diff --git a/NEWS b/NEWS index f41e772ad..710b8ddda 100644 --- a/NEWS +++ b/NEWS @@ -49,6 +49,11 @@ Bytevectors" in the manual. Compared to the previous versions, these accept range arguments. See "Accessing and Modifying Vector Contents" in the manual. +** (system foreign) supports C99 complex types + +The types `complex-float' and `complex-double' stand for C99 `float +_Complex' and `double _Complex` respectively. + Changes in 3.0.7 (since 3.0.6) -- cgit v1.2.1