From e06a3727bad1c6092ddfa043be8f8fd2bbaeb276 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Fri, 6 Feb 2026 15:02:41 -0700 Subject: [PATCH] support `(nongenerative uid)` in `define-ftype` A `(nongenerative uid)` clause in `define-ftype` is analogous to the same kind of clause in `define-record-type`. To prevent mismatched definitions using the same `uid`, the check for interned record types needs to compare "extras" --- fields that are added to the record type itself. Previously, "extras" were just assumed to be the same, since they were only generated internally. Also, correct some information in the documentation about the generativity of `define-ftype`. When the right-hand side is an existing ftype name, the definition is not syntactically generative. In those case, `(nongenerative uid)` is disllowed. The `(& )` form for a foreign procedure or callable now allows any pointer ftype as the second , instead of allowing only `ftype-pointer` or `ftype-scheme-object-pointer`. The internal implementation of `ftype-pointer` and `ftype-scheme-object-pointer has been cleaned up to allow these extensions. Relatedly, enable cp0 to reduce `ftype-pointer-address` of `ftype-&ref` of a null pointer to a constant offset. --- boot/pb/equates.h | 5 +- boot/pb/petite.boot | Bin 6857260 -> 6895665 bytes boot/pb/scheme.boot | Bin 4921513 -> 4925756 bytes boot/pb/scheme.h | 4 +- build.zuo | 14 +- c/fasl.c | 13 +- csug/foreign.stex | 77 +++++--- mats/foreign.ms | 91 ++++++++++ mats/foreign2.c | 16 ++ mats/ftype.ms | 140 +++++++++++++++ mats/misc.ms | 14 +- mats/patch-compile-0-f-t-f | 14 +- mats/patch-compile-0-t-f-f | 30 ++-- mats/patch-compile-0-t-t-f | 14 +- mats/patch-interpret-0-f-f-f | 36 ++-- mats/patch-interpret-0-f-t-f | 18 +- mats/patch-interpret-0-t-f-f | 26 +-- mats/patch-interpret-0-t-t-f | 18 +- mats/root-experr-compile-0-f-f-f | 15 ++ release_notes/release_notes.stex | 21 +++ s/base-lang.ss | 9 +- s/cmacros.ss | 2 +- s/cp0.ss | 18 ++ s/cpcommonize.ss | 4 +- s/cpnanopass.ss | 12 +- s/cprep.ss | 2 +- s/fasl.ss | 10 +- s/ftype.ss | 294 ++++++++++++++++++++----------- s/pb.ss | 2 +- s/primdata.ss | 8 +- s/reboot-record.ss | 10 +- s/reboot.ss | 1 + s/record.ss | 8 +- s/syntax.ss | 19 +- s/x86.ss | 2 +- 35 files changed, 728 insertions(+), 239 deletions(-) diff --git a/boot/pb/equates.h b/boot/pb/equates.h index c971a9f32..286854a32 100644 --- a/boot/pb/equates.h +++ b/boot/pb/equates.h @@ -1,4 +1,4 @@ -/* equates.h for Chez Scheme Version 10.4.0-pre-release.3 */ +/* equates.h for Chez Scheme Version 10.4.0-pre-release.4 */ /* Do not edit this file. It is automatically generated and */ /* specifically tailored to the version of Chez Scheme named */ @@ -119,6 +119,7 @@ typedef uint64_t U64; #define code_flag_guardian 0x8 #define code_flag_lift_barrier 0x80 #define code_flag_mutable_closure 0x10 +#define code_flag_no_interrupt_trap 0x100 #define code_flag_single_valued 0x40 #define code_flag_system 0x1 #define code_flag_template 0x4 @@ -1018,7 +1019,7 @@ typedef uint64_t U64; #define rtd_sealed 0x4 #define sbwp (ptr)0x4E #define scaled_shot_1_shot_flag -0x8 -#define scheme_version 0xA040003 +#define scheme_version 0xA040004 #define seginfo_generation_disp 0x1 #define seginfo_list_bits_disp 0x8 #define seginfo_space_disp 0x0 diff --git a/boot/pb/petite.boot b/boot/pb/petite.boot index 1b27f289f021833d6386c06ec0372dce07d33e36..1efde15f45b51e15077278fb3a27a70a41e550ad 100644 GIT binary patch delta 350839 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%0D~fi6?aeCuwrM|)-9ly_TGN(T_Y<3u?q9Sz0Jpf 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 delta 326174 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 P006OT4?{1 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

L~JdblNv!}r$Tw>)_;ST*BI%Ew>1e0!^B`S!M} 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 JUxvHe{vTycH=O_g diff --git a/boot/pb/scheme.boot b/boot/pb/scheme.boot index 4bc72761fd076ee3c09d12a6acf3de5c0e66e323..8822b619ddd89cbe80f2164a68d9e167200c8bd5 100644 GIT binary patch delta 76878 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 D&72q7 diff --git a/boot/pb/scheme.h b/boot/pb/scheme.h index cea71232d..b8ae62c3f 100644 --- a/boot/pb/scheme.h +++ b/boot/pb/scheme.h @@ -1,4 +1,4 @@ -/* scheme.h for Chez Scheme Version 10.4.0-pre-release.3 (pb) */ +/* scheme.h for Chez Scheme Version 10.4.0-pre-release.4 (pb) */ /* Do not edit this file. It is automatically generated and */ /* specifically tailored to the version of Chez Scheme named */ @@ -40,7 +40,7 @@ #endif /* Chez Scheme Version and machine type */ -#define VERSION "10.4.0-pre-release.3" +#define VERSION "10.4.0-pre-release.4" #define MACHINE_TYPE "pb" /* Integer typedefs */ diff --git a/build.zuo b/build.zuo index 0a25a28ab..b910380f2 100644 --- a/build.zuo +++ b/build.zuo @@ -271,7 +271,16 @@ (run-make ""))] [:target ,(string->symbol (~a "install-" name)) (,name-sym) ,(lambda (token . args) - (run-make "install"))])) + (run-make "install"))] + [:target ,(string->symbol (~a "clean-" name)) (,mf-out) + ,(lambda (token . args) + (run-make (~a name ".clean")) + (for-each (lambda (name) + (when (member (car (reverse (string-split name "."))) + '("tex" "html" "aux" "bbl" "out" "pdf" + "firstrun" "secondrun" "thirdrun" "idx")) + (rm* (build-path doc-dir name)))) + (ls doc-dir)))])) (define (check-boot-file-version) (define src-ver (source-version)) @@ -408,7 +417,8 @@ ,void] [:target install-docs (install-csug install-release_notes) ,void] - + [:target clean-docs (clean-csug clean-release_notes) + ,void] [:target rpm () ,(lambda (token) diff --git a/c/fasl.c b/c/fasl.c index 8ecb5b8e9..d6d8d972a 100644 --- a/c/fasl.c +++ b/c/fasl.c @@ -226,6 +226,7 @@ static iptr stringin(ptr *pstrbuf, iptr start, faslFile f); static void faslin(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f); static void fasl_record(ptr tc, ptr *x, ptr t, ptr *pstrbuf, faslFile f, uptr size); static IBOOL rtd_equiv(ptr x, ptr y); +static IBOOL rtd_extras_equiv(ptr x, ptr y); static IBOOL equalp(ptr x, ptr y); #ifdef PORTABLE_BYTECODE static void pb_set_abs(void *address, uptr item); @@ -1396,7 +1397,17 @@ static IBOOL rtd_equiv(ptr x, ptr y) { equalp(RECORDDESCMPM(x), RECORDDESCMPM(y)) && equalp(RECORDDESCFLDS(x), RECORDDESCFLDS(y)) && RECORDDESCSIZE(x) == RECORDDESCSIZE(y) && - RECORDDESCFLAGS(x) == RECORDDESCFLAGS(y); + RECORDDESCFLAGS(x) == RECORDDESCFLAGS(y) && + ((RECORDDESCSIZE(RECORDINSTTYPE(x)) == FIX(size_record_type)) + || rtd_extras_equiv(x, y)); +} + +static IBOOL rtd_extras_equiv(ptr x, ptr y) { + iptr count = (UNFIX(RECORDDESCSIZE(RECORDINSTTYPE(x))) >> log2_ptr_bytes) - 1; + iptr i; + for (i = (size_record_type >> log2_ptr_bytes) - 1; i < count; i++) + if (!equalp(RECORDINSTIT(x, i), RECORDINSTIT(y, i))) return 0; + return 1; } #ifdef HPUX diff --git a/csug/foreign.stex b/csug/foreign.stex index 72371a12f..31e6780dc 100644 --- a/csug/foreign.stex +++ b/csug/foreign.stex @@ -668,7 +668,7 @@ and the actual argument is the address encapsulated in the ftype pointer. \foreigntype{\scheme{ftype-pointer}} -\index{ftype-pointer}This type allows any pointer to a foreign type +\index{\scheme{ftype-pointer}}This type allows any pointer to a foreign type (ftype) to be passed, independent of the foreign type, and including generic foreign pointers and foreign pointers to Scheme objects. In other words, this type is specific to foreign pointers created with @@ -676,7 +676,7 @@ other words, this type is specific to foreign pointers created with \scheme{void*}. \foreigntype{\scheme{ftype-scheme-object-pointer}} -\index{ftype-scheme-object-pointer}This type allows a foreign pointer +\index{\scheme{ftype-scheme-object-pointer}}This type allows a foreign pointer to a Scheme object, such as one created with \scheme{make-ftype-scheme-object-pointer}. The address received on the C side is like the one produced by \scheme{object->reference-address} @@ -703,14 +703,9 @@ content at the foreign pointer's address instead of as the address. For example, if \var{ftype-name} identifies a \scheme{struct} type, then \scheme{(& \var{ftype-name})} passes a struct argument instead of a struct-pointer argument. The \var{ftype-name} cannot refer to an array type. -The variant \scheme{(& \var{ftype-name} ftype-pointer)} is the same, -except that the Scheme-side representation can be any foreign pointer -type, not necessarily one specific to \var{ftype-name}. -The variant \scheme{(& \var{ftype-name} ftype-scheme-object-pointer)} -is also the same, except that Scheme-side representation must be a -foreign object pointer to a Scheme object like one created by -\scheme{make-ftype-scheme-object-pointer}. - +The variant \scheme{(& \var{ftype-name} \var{ftype-name})} is the same, +except that the Scheme-side representation corresponds to the second +\var{ftype-name}, which can be any pointer type. \medskip\noindent The result types are similar to the parameter types with the addition of a @@ -1024,15 +1019,9 @@ all other arguments to receive the result. An unspecified Scheme object is returned when the foreign procedure is called, since the result is instead written into storage referenced by the extra argument. The \var{ftype-name} cannot refer to an array type. -The variant \scheme{(& \var{ftype-name} ftype-pointer)} is the same, +The variant \scheme{(& \var{ftype-name} \var{ftype-name})} is the same, except that the foreign pointer passed as an extra initial argument -can be any foreign pointer type, not necessarily one specific to -\var{ftype-name}. -The variant \scheme{(& \var{ftype-name} ftype-scheme-object-pointer)} -is also the same, except that the foreign pointer passed as an extra -initial argument must be a foreign object pointer to a Scheme object -like one created by \scheme{make-ftype-scheme-object-pointer}. - +corresponds to the second \var{ftype-name}, which can be any pointer type. \medskip\noindent @@ -1195,6 +1184,9 @@ A \scheme{(& \var{ftype})} result type for a callable causes the Scheme procedure to receive an extra \scheme{(& \var{ftype})} argument before all others; the Scheme procedure should write a result into the extra argument, and the direct result of the Scheme procedure is ignored. +A \scheme{(& \var{ftype-name} \var{ftype-name})} argument or result is the same, +except that the Scheme-side representation corresponds to the second +\var{ftype-name}, which can be any pointer type. Type checking is performed for result values but not argument values, since the parameter values are provided by the foreign code and must be assumed to be @@ -1647,7 +1639,8 @@ of \scheme{foreign-ref} above. %---------------------------------------------------------------------------- \entryheader\label{defn:define-ftype} \formdef{define-ftype}{\categorysyntax}{(define-ftype \var{ftype-name} \var{ftype})} -\formdef{define-ftype}{\categorysyntax}{(define-ftype (\var{ftype-name} \var{ftype}) \dots)} +\formdef{define-ftype}{\categorysyntax}{(define-ftype \var{ftype-name} \var{ftype} (nongenerative \var{uid}))} +\formdef{define-ftype}{\categorysyntax}{(define-ftype (\var{ftype-name} \var{ftype} \var{maybe-uid-clause}) \dots)} \returns unspecified \listlibraries \endentryheader @@ -1662,6 +1655,9 @@ to the foreign type represented \var{ftype} or the foreign types represented by \scheme{\var{ftype} \dots}. Each \var{ftype-name} can be used to access foreign objects with the declared shape, and each can be used in the formation of other ftypes. +When multiple \var{ftype-name}s are provided, each \var{maybe-uid-clause} +is either empty or of the form \scheme{(nongenerative \var{uid})}. +Each \var{uid} must be a gensym. An \var{ftype} must take one of the following forms: @@ -1789,7 +1785,7 @@ Each \var{ftype-name} in an \var{ftype} must either (b) be defined by the current \scheme{define-ftype}, (c) be a base-type name, i.e., one of the type names supported by \scheme{foreign-ref} and \scheme{foreign-set!}, or -(d) \scheme{ftype-pointer} or \scheme{ftype-scheme-object-pointer}, +(d) be \scheme{ftype-pointer} or \scheme{ftype-scheme-object-pointer}, which indicate a generic ftype pointer or an ftype pointer for a Scheme object, respectively. In case (b), any reference within one \var{ftype} to the @@ -1862,7 +1858,7 @@ inserted. Multiple-byte scalar values are stored in memory using the target machine's native ``endianness,'' e.g., \scheme{little} -on X86 and X86\_64-based platforms and \scheme{big} on +on x86 and x86\_64-based platforms and \scheme{big} on Sparc-based platforms. Big-endian or little-endian representation can be forced via the \scheme{endian} ftype with a \scheme{big} or \scheme{little} @@ -1888,13 +1884,32 @@ virtual machine), a bit field must be specified explicitly as \scheme{big} or \scheme{little} endian by an enclosing declaration. -Two ftypes are considered equivalent only if defined by the -same \scheme{ftype} binding. -If two ftype definitions look identical but appear in two +When \var{ftype} is an immediate \var{ftype-name} or an +\var{ftype-name} wrapped only by \scheme{packed}, \scheme{unpacked}, +or \scheme{endian}, then the defined \var{ftype-name} is an +alias for the \var{ftype}. Otherwise, a ftype definition is syntactically +generative in the same way as using \scheme{(nongenerative)} with +\scheme{define-record-type}: two ftypes are equivalent only if defined by the +same \scheme{ftype} binding. In that case, +if two ftype definitions look identical but appear in two parts of the same program, the ftypes are not identical, and attempts to access one using the name of the other via the operators described below will fail with a run-time -exception. +exception. When a \var{uid} is provided via \scheme{(nongenerative \var{uid})}, +then the defined ftype is equivalent to any other binding with the +same \var{uid}. A definition with a \var{uid} is rejected if it is +incompatible with a previous definition using the same \var{uid}. +A \var{uid} can be provided when \var{ftype-name} is +\scheme{ftype-pointer}, \scheme{ftype-scheme-object-pointer}, or a +subtype of one of those; in that case, the definition is generative +(instead of defining an alias), and it creates a subtype of the given +\var{ftype-name}. + +\index{derived Scheme-object pointer type}% +If \var{ftype} is \scheme{ftype-scheme-object-pointer}, then the +defined \var{ftype-name} is a derived Scheme-object pointer type. If +\var{ftype} is itself a derived Scheme-object pointer type, then so +is the defined \var{ftype-name}. Array bounds must always be constant. If an array's length cannot be known until run time, the array @@ -1961,7 +1976,8 @@ with additional fields or elements. This allows an instance of the struct or array to be treated as an instance of the type of its first field or element, without the need to use \scheme{ftype-&ref} to allocate a new pointer to the field or element. - +A subtype of \scheme{ftype-scheme-object-pointer} is never created +in this way, however. %---------------------------------------------------------------------------- \entryheader @@ -2006,7 +2022,9 @@ of a function cannot generally be determined. If \var{ftype-name} does not describe a function ftype, \var{expr} must evaluate to an \var{address} represented as an exact integer in -the appropriate range for the target machine. +the appropriate range for the target machine. The type identified +by \var{ftype-name} must not be \var{ftype-scheme-object-pointer} +or a derived Scheme-object pointer type. The ftype-pointer object returned by this procedure encapsulates the address and is tagged with a representation of the type identified by @@ -2114,6 +2132,7 @@ via one of the methods described in Section ~\ref{SECTFOREIGNACCESS}. \entryheader\label{desc:make-ftype-scheme-object-pointer} \formdef{make-ftype-scheme-object-pointer}{\categorysyntax}{(make-ftype-scheme-object-pointer \var{expr})} \formdef{make-ftype-scheme-object-pointer}{\categorysyntax}{(make-ftype-scheme-object-pointer \var{expr} \var{offset})} +\formdef{make-ftype-scheme-object-pointer}{\categorysyntax}{(make-ftype-scheme-object-pointer \var{expr} \var{offset} \var{ftype-name})} \returns an ftype-pointer object that refers to a Scheme object \listlibraries \endentryheader @@ -2131,6 +2150,10 @@ The resulting ftype pointer is recognized by \scheme{ftype-scheme-object-pointer?} as well as \scheme{ftype-pointer?} without an \var{ftype-name}. +If \var{ftype-name} is provided, it must be +\var{ftype-scheme-object-pointer} or a derived Scheme-object pointer +type that is defined using \scheme{define-ftype}. + %---------------------------------------------------------------------------- \entryheader \formdef{ftype-pointer?}{\categorysyntax}{(ftype-pointer? \var{obj})} diff --git a/mats/foreign.ms b/mats/foreign.ms index 1ec0bcbbb..ab2354a32 100644 --- a/mats/foreign.ms +++ b/mats/foreign.ms @@ -2396,6 +2396,97 @@ (ftype-pointer-null? (void*->obj-void* (make-ftype-pointer integer-8 0) 0)) (ftype-pointer-null? (void*->obj-void* (make-ftype-pointer integer-8 -1) 1)) + (begin + (define-ftype IUI (struct [a int] [b unsigned-int] [c int])) + (define-ftype unsigned-int-ptr (* unsigned-int)) + (define get-int-uint-int (foreign-procedure "get_int_uint_int" (int unsigned-int int) (& IUI))) + (define get-int-uint-int-as-ptr (foreign-procedure "get_int_uint_int" (int unsigned-int int) (& IUI ftype-pointer))) + (define get-int-uint-int-as-uint* (foreign-procedure "get_int_uint_int" (int unsigned-int int) (& IUI unsigned-int-ptr))) + (define-ftype iui-callback (function ((& IUI)) int)) + (define-ftype iui-callback-as-ptr (function ((& IUI ftype-pointer)) int)) + (define-ftype iui-callback-as-uint* (function ((& IUI unsigned-int-ptr)) int)) + (define call-with-int-uint-int (foreign-procedure "call_with_int_uint_int" ((* iui-callback) int unsigned-int int) int)) + (define call-with-int-uint-int-as-ptr (foreign-procedure "call_with_int_uint_int" ((* iui-callback-as-ptr) int unsigned-int int) int)) + (define call-with-int-uint-int-as-uint* (foreign-procedure "call_with_int_uint_int" ((* iui-callback-as-uint*) int unsigned-int int) int)) + #t) + + (let* ([addr (foreign-alloc (ftype-sizeof IUI))] + [p (make-ftype-pointer IUI addr)]) + (get-int-uint-int p -10 3 100) + (and (= -9 (ftype-ref IUI (a) p)) + (= -9 (ftype-ref int () p)) + (= 6 (ftype-ref IUI (b) p)) + (= 99 (ftype-ref IUI (c) p)) + (begin (foreign-free addr) #t))) + + (let* ([addr (foreign-alloc (ftype-sizeof IUI))] + [p (make-ftype-pointer int addr)]) + (get-int-uint-int-as-ptr p -10 3 100) + (and (= -9 (ftype-ref int () p)) + (= 6 (ftype-any-ref unsigned-int () p (ftype-sizeof int))) + (= 99 (ftype-ref int () p 2)) + (begin (foreign-free addr) #t))) + + (let* ([addr (foreign-alloc (ftype-sizeof IUI))] + [p (make-ftype-pointer unsigned-int addr)]) + (get-int-uint-int-as-ptr p -10 3 100) + (and (= 4294967287 (ftype-ref unsigned-int () p)) + (= 6 (ftype-ref unsigned-int () p 1)) + (= 99 (ftype-ref unsigned-int () p 2)) + (begin (foreign-free addr) #t))) + + (let* ([bv (make-bytevector (ftype-sizeof IUI))] + [p (make-ftype-scheme-object-pointer bv)]) + (get-int-uint-int-as-ptr p -10 3 100) + (and (= -9 (bytevector-s32-native-ref bv 0)) + (= 6 (bytevector-s32-native-ref bv 4)) + (= 99 (bytevector-s32-native-ref bv 8)))) + + (error? (let* ([addr (foreign-alloc (ftype-sizeof IUI))] + [p (make-ftype-pointer IUI addr)]) + (dynamic-wind + void + (lambda () (get-int-uint-int-as-uint* p -10 3 100)) + (lambda () (foreign-free addr))))) + + (error? (let* ([addr (foreign-alloc (ftype-sizeof IUI))] + [p (make-ftype-pointer int addr)]) + (dynamic-wind + void + (lambda () (get-int-uint-int p -10 3 100)) + (lambda () (foreign-free addr))))) + + (let* ([cb (lambda (p) ; IUI pointer + (+ (ftype-ref IUI (a) p) + (ftype-ref int () p) + (ftype-ref IUI (b) p) + (ftype-ref IUI (c) p)))] + [p (make-ftype-pointer iui-callback cb)]) + (and (= 87 (call-with-int-uint-int p -10 3 100)) + (begin + (unlock-object (foreign-callable-code-object (ftype-pointer-address p))) + #t))) + + (let* ([cb (lambda (p) ; generic pointer + (+ (ftype-any-ref int () p) + (ftype-any-ref int () p (ftype-sizeof int)) + (ftype-any-ref int () p (* 2 (ftype-sizeof int)))))] + [p (make-ftype-pointer iui-callback-as-ptr cb)]) + (and (= 96 (call-with-int-uint-int-as-ptr p -10 3 100)) + (begin + (unlock-object (foreign-callable-code-object (ftype-pointer-address p))) + #t))) + + (let* ([cb (lambda (p) ; unsigned-int pointer + (+ (quotient (ftype-ref unsigned-int () p) 16) + (ftype-ref unsigned-int () p 1) + (ftype-ref unsigned-int () p 2)))] + [p (make-ftype-pointer iui-callback-as-uint* cb)]) + (and (= (+ (quotient 4294967287 16) 6 99) (call-with-int-uint-int-as-uint* p -10 3 100)) + (begin + (unlock-object (foreign-callable-code-object (ftype-pointer-address p))) + #t))) + (begin (define-ftype A (struct [x uptr] [y uptr])) (define a (make-ftype-pointer A (foreign-alloc (ftype-sizeof A)))) diff --git a/mats/foreign2.c b/mats/foreign2.c index 8181ffe70..a21b14c45 100644 --- a/mats/foreign2.c +++ b/mats/foreign2.c @@ -567,3 +567,19 @@ EXPORT double many_doubles_and_float_and_three_floats(double a, double b, double EXPORT double many_doubles_and_three_floats_and_three_floats(double a, double b, double c, double d, double e, double f, double g, double h, three_floats i, three_floats j) { return a + b + c + d + e + f + g + h + i.a + i.b + i.c + j.a + j.b + j.c; } + +typedef struct { + int a; + unsigned int b; + int c; +} int_uint_int; + +EXPORT int_uint_int get_int_uint_int(int a, unsigned int b, int c){ + int_uint_int iui = { a + 1, b * 2, c - 1 }; + return iui; +} + +EXPORT int call_with_int_uint_int(int (*f)(int_uint_int), int a, unsigned int b, int c){ + int_uint_int iui = { a + 1, b * 2, c - 1 }; + return f(iui); +} diff --git a/mats/ftype.ms b/mats/ftype.ms index 35c94e639..f95ad186b 100644 --- a/mats/ftype.ms +++ b/mats/ftype.ms @@ -124,6 +124,44 @@ (define-ftype F1 (function (int) int)) #t) + (error? ; bad uid + (define-ftype P1 ftype-pointer (nongenerative 100))) + + (error? ; require gensym for uid + (define-ftype P1 ftype-pointer (nongenerative p))) + + (error? ; must include a uid + (define-ftype I1 int (nongenerative))) + + (error? ; bad syntax + (define-ftype I1 int (ng #{int of6r270eh1theews7ikmyh8vo-0}))) + + (error? ; bad syntax + (define-ftype I1 int nongenerative)) + + (error? ; must include a uid + (define-ftype (I1 int (nongenerative)))) + + (error? ; bad syntax + (define-ftype (I1 int (ng #{int of6r270eh1theews7ikmyh8vo-0})))) + + (error? ; bad syntax + (define-ftype (I1 int nongenerative))) + + (error? ; alias cannot have a uid + (define-ftype I1 int (nongenerative #{int of6r270eh1theews7ikmyh8vo-0}))) + + (begin + (define-ftype PI1 (* int) (nongenerative #{int of6r270eh1theews7ikmyh8vo-0})) + (define-ftype PI2 (* int) (nongenerative #{int of6r270eh1theews7ikmyh8vo-0})) + (define-ftype + (PI3 (* int) (nongenerative #{int of6r270eh1theews7ikmyh8vo-0})) + (PI4 (* long) (nongenerative #{int of6r270eh1theews7ikmyh8vo-2}))) + #t) + + (error? ; mismatch + (define-ftype PI5 (* long) (nongenerative #{int of6r270eh1theews7ikmyh8vo-0}))) + (error? ; function ftypes have unknown size (ftype-sizeof F1)) @@ -170,6 +208,18 @@ (ftype-pointer-address (ftype-&ref Ac (c3) x)))) '(6 1 16 0 2 4 6 8)) + (equivalent-expansion? + (parameterize ([enable-cp0 #t] [#%$suppress-primitive-inlining #f]) + (expand/optimize + '(lambda () + (#2%list + (ftype-pointer-address (ftype-&ref Ac (c1 a1) (make-ftype-pointer Ac 0))) + (ftype-pointer-address (ftype-&ref Ac (c1 a2) (make-ftype-pointer Ac 0))) + (ftype-pointer-address (ftype-&ref Ac (c1 a3) (make-ftype-pointer Ac 0))) + (ftype-pointer-address (ftype-&ref Ac (c2 b1) (make-ftype-pointer Ac 0))) + (ftype-pointer-address (ftype-&ref Ac (c3) (make-ftype-pointer Ac 0))))))) + '(lambda () (#2%list 0 2 4 6 8))) + (begin (define addr (foreign-alloc (ftype-sizeof Ac))) (define x (make-ftype-pointer Ac addr)) @@ -707,6 +757,17 @@ [P3 (struct [a ftype-scheme-object-pointer])] [P4 (struct [a (* ftype-scheme-object-pointer)])]) + ; ---------------- + + (begin + (define-ftype TSsub + (struct [a ftype-scheme-object-pointer])) + (define-ftype TAsub + (array 10 ftype-scheme-object-pointer)) + #t) + (not (ftype-scheme-object-pointer? (make-ftype-pointer TSsub 0))) + (not (ftype-scheme-object-pointer? (make-ftype-pointer TAsub 0))) + ; ---------------- (equal? @@ -1392,6 +1453,55 @@ (foreign-free (ftype-pointer-address s-fptr)) (equal? (list a b c d) (list 42 7.125 75 8.25)))) + ; ------------------------------------------------------------ + (begin + (define-ftype x-pointer ftype-pointer) + (define-ftype x1-pointer ftype-pointer (nongenerative #{x1 febdtjdl3qff3qc00rnyph70g-0})) + (define-ftype x2-pointer x1-pointer (nongenerative #{x2 febdtjdl3qff3qc00rnyph70g-2})) + (define-ftype s-pointer ftype-scheme-object-pointer) + (define-ftype s1-pointer ftype-scheme-object-pointer (nongenerative #{s1 febdtjdl3qff3qc00rnyph70g-1})) + (define-ftype s2-pointer s1-pointer (nongenerative #{s2 febdtjdl3qff3qc00rnyph70g-3})) + #t) + + (error? ; cannot use scheme-object pointer ftype + (make-ftype-pointer s-pointer 0)) + (error? ; must use scheme-object pointer ftype + (make-ftype-scheme-object-pointer 0 0 x-pointer)) + + (ftype-pointer? (make-ftype-pointer x-pointer 0)) + (ftype-pointer? x-pointer (make-ftype-pointer x-pointer 0)) + (not (ftype-pointer? x1-pointer (make-ftype-pointer x-pointer 0))) + (not (ftype-pointer? x2-pointer (make-ftype-pointer x-pointer 0))) + (ftype-pointer? x-pointer (make-ftype-pointer x1-pointer 0)) + (ftype-pointer? x-pointer (make-ftype-pointer x2-pointer 0)) + (ftype-pointer? x1-pointer (make-ftype-pointer x2-pointer 0)) + (not (ftype-pointer? x2-pointer (make-ftype-pointer x1-pointer 0))) + + (ftype-pointer? (make-ftype-scheme-object-pointer 0 0 s-pointer)) + (ftype-pointer? x-pointer (make-ftype-scheme-object-pointer 0 0 s-pointer)) + (ftype-pointer? s-pointer (make-ftype-scheme-object-pointer 0 0 s-pointer)) + (not (ftype-pointer? s1-pointer (make-ftype-scheme-object-pointer 0 0 s-pointer))) + (not (ftype-pointer? s2-pointer (make-ftype-scheme-object-pointer 0 0 s-pointer))) + (not (ftype-pointer? x1-pointer (make-ftype-scheme-object-pointer 0 0 s-pointer))) + (not (ftype-pointer? x2-pointer (make-ftype-scheme-object-pointer 0 0 s-pointer))) + (ftype-scheme-object-pointer? (make-ftype-scheme-object-pointer 0 0 s-pointer)) + (ftype-scheme-object-pointer? (make-ftype-scheme-object-pointer 0 0 s1-pointer)) + (ftype-scheme-object-pointer? (make-ftype-scheme-object-pointer 0 0 s2-pointer)) + (ftype-pointer? s-pointer (make-ftype-scheme-object-pointer 0 0 s1-pointer)) + (ftype-pointer? s1-pointer (make-ftype-scheme-object-pointer 0 0 s1-pointer)) + (not (ftype-pointer? s2-pointer (make-ftype-scheme-object-pointer 0 0 s1-pointer))) + (ftype-pointer? s2-pointer (make-ftype-scheme-object-pointer 0 0 s2-pointer)) + + (let loop ([n 1000]) + (or (zero? n) + (let () + (define bstr (make-bytevector 100)) + (define p (make-ftype-scheme-object-pointer bstr 0 s2-pointer)) + (collect) + (and (eq? bstr (ftype-scheme-object-pointer-object p)) + (loop (sub1 n)))))) + + ; ------------------------------------------------------------ (begin ;; Show that binding does not interfere with native types. (define-syntax unsigned-16 (make-compile-time-value "Non-interfering binding")) @@ -3074,6 +3184,36 @@ (begin (load "testfile-ftype5.so") (ftype-pointer? ftype5-A (make-ftype-pointer ftype5-A 0))) + + (begin + (with-output-to-file "testfile-ftype6.ss" + (lambda () + (pretty-print + '(define-ftype ftype6-A (struct [a double] [b wchar]) + (nongenerative #{ftype-6 jni7x5i9jgwk8q0utdook23gt-1}))) + (pretty-print + '(define a (make-ftype-pointer ftype6-A (foreign-alloc (ftype-sizeof ftype6-A)))))) + 'replace) + (load "testfile-ftype6.ss") + #t) + (begin + (for-each separate-compile '(ftype6)) + (load "testfile-ftype6.so") + #t) + (begin + ;; separate compile with same uid should be ok + (with-output-to-file "testfile-ftype6.ss" + (lambda () + (pretty-print + '(define-ftype ftype6-A (union [a double] [b wchar]) + (nongenerative #{ftype-6 jni7x5i9jgwk8q0utdook23gt-1})))) + 'replace) + (for-each separate-compile '(ftype6)) + #t) + (error? + ;; ...but fail on load + (load "testfile-ftype6.so")) + ) (mat ftype-bits diff --git a/mats/misc.ms b/mats/misc.ms index 2259f126d..dec4f411f 100644 --- a/mats/misc.ms +++ b/mats/misc.ms @@ -2058,7 +2058,9 @@ (box 88) "" '#() '#vu8() (make-fxvector 0) (make-flvector 0) (string->immutable-string "") (vector->immutable-vector '#()) - (bytevector->immutable-bytevector '#vu8()))) + (bytevector->immutable-bytevector '#vu8()) + (make-ftype-pointer ftype-pointer 16) + (make-ftype-scheme-object-pointer #t 1))) (define (same-vfasl-content? v) (andmap (lambda (a b) (or (eqv? a b) @@ -2078,6 +2080,16 @@ (vfasl-demo-x b)) (equal? (vfasl-demo-y a) (vfasl-demo-y b))) + (and (ftype-scheme-object-pointer? a) + (ftype-scheme-object-pointer? b) + (equal? (ftype-scheme-object-pointer-object a) + (ftype-scheme-object-pointer-object b)) + (eqv? (ftype-scheme-object-pointer-offset a) + (ftype-scheme-object-pointer-offset b))) + (and (ftype-pointer? a) + (ftype-pointer? b) + (eqv? (ftype-pointer-address a) + (ftype-pointer-address b))) (begin (printf "~s ~s\n" a b) #f))) diff --git a/mats/patch-compile-0-f-t-f b/mats/patch-compile-0-f-t-f index 840fc2157..992a3fb80 100644 --- a/mats/patch-compile-0-f-t-f +++ b/mats/patch-compile-0-f-t-f @@ -1,5 +1,5 @@ -*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f 2026-03-10 17:14:12.556278673 -0700 ---- output-compile-0-f-t-f-experr/errors-compile-0-f-t-f 2026-03-10 17:14:08.862276807 -0700 +*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f Sat Mar 14 11:28:51 2026 +--- output-compile-0-f-t-f-experr/errors-compile-0-f-t-f Sat Mar 14 11:28:48 2026 *************** *** 212,218 **** 3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a". @@ -18,22 +18,24 @@ 3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a". 3.mo:Expected error in mat dipa-letrec: "attempt to reference undefined variable a". *************** -*** 231,237 **** +*** 231,238 **** 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable b". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable a". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g". -! 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f". +- 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable c". 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x". ---- 231,237 ---- + 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable x". +--- 231,238 ---- 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable b". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable a". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g". -! 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g". ++ 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable g". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable f". 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable c". 3.mo:Expected warning in mat cpvalid: "possible attempt to reference undefined variable x". + 3.mo:Expected error in mat cpvalid: "attempt to reference undefined variable x". *************** *** 278,287 **** 3.mo:Expected error in mat mrvs: "returned 3 values to single value return context". diff --git a/mats/patch-compile-0-t-f-f b/mats/patch-compile-0-t-f-f index 74e14a584..5a0583b12 100644 --- a/mats/patch-compile-0-t-f-f +++ b/mats/patch-compile-0-t-f-f @@ -1,5 +1,5 @@ -*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f 2026-03-10 17:14:12.556278673 -0700 ---- output-compile-0-t-f-f-experr/errors-compile-0-t-f-f 2026-03-10 17:14:26.327284163 -0700 +*** output-compile-0-f-f-f-experr/errors-compile-0-f-f-f Sat Mar 14 11:28:51 2026 +--- output-compile-0-t-f-f-experr/errors-compile-0-t-f-f Sat Mar 14 11:32:58 2026 *************** *** 180,186 **** 3.mo:Expected error in mat case-lambda: "incorrect number of arguments 2 to #". @@ -4721,22 +4721,24 @@ 7.mo:Expected error in mat top-level-value-functions: "define-top-level-value: # is not a symbol". 7.mo:Expected error in mat top-level-value-functions: "variable i-am-not-bound-i-hope is not bound". *************** -*** 8317,8323 **** +*** 8317,8324 **** record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 1 to #". record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 1 to #". record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 3 to #". -! record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 3 to #". +- record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 3 to #". record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 4 to #". record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: record constructor descriptor # is not for parent of record type #". record.mo:Expected error in mat r6rs-records-procedural: "make-record-type-descriptor: cannot extend sealed record type # as foo". ---- 8317,8323 ---- + record.mo:Expected error in mat r6rs-records-syntactic: "invalid syntax point". +--- 8317,8324 ---- record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 1 to #". record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 1 to #". record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 3 to #". -! record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 4 to #". record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 4 to #". ++ record.mo:Expected error in mat r6rs-records-procedural: "incorrect number of arguments 4 to #". record.mo:Expected error in mat r6rs-records-procedural: "make-record-constructor-descriptor: record constructor descriptor # is not for parent of record type #". record.mo:Expected error in mat r6rs-records-procedural: "make-record-type-descriptor: cannot extend sealed record type # as foo". + record.mo:Expected error in mat r6rs-records-syntactic: "invalid syntax point". *************** *** 8408,8527 **** hash.mo:Expected error in mat old-hash-table: "hash-table-for-each: ((a . b)) is not an eq hashtable". @@ -6434,7 +6436,7 @@ foreign.mo:Expected error in mat foreign-sizeof: "foreign-sizeof: invalid foreign type specifier 1". foreign.mo:Expected error in mat foreign-bytevectors: "u8*->u8*: invalid foreign-procedure argument "hello"". *************** -*** 10976,10988 **** +*** 10991,11003 **** unix.mo:Expected error in mat file-operations: "file-access-time: failed for "testlink": no such file or directory". unix.mo:Expected error in mat file-operations: "file-change-time: failed for "testlink": no such file or directory". unix.mo:Expected error in mat file-operations: "file-modification-time: failed for "testlink": no such file or directory". @@ -6448,7 +6450,7 @@ windows.mo:Expected error in mat registry: "get-registry: pooh is not a string". windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string". windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string". ---- 10976,10988 ---- +--- 10991,11003 ---- unix.mo:Expected error in mat file-operations: "file-access-time: failed for "testlink": no such file or directory". unix.mo:Expected error in mat file-operations: "file-change-time: failed for "testlink": no such file or directory". unix.mo:Expected error in mat file-operations: "file-modification-time: failed for "testlink": no such file or directory". @@ -6463,7 +6465,7 @@ windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string". windows.mo:Expected error in mat registry: "put-registry!: 3 is not a string". *************** -*** 11010,11081 **** +*** 11025,11096 **** ieee.mo:Expected error in mat flonum->fixnum: "flonum->fixnum: result for -inf.0 would be outside of fixnum range". ieee.mo:Expected error in mat flonum->fixnum: "flonum->fixnum: result for +nan.0 would be outside of fixnum range". ieee.mo:Expected error in mat fllp: "fllp: 3 is not a flonum". @@ -6536,7 +6538,7 @@ date.mo:Expected error in mat time: "time>=?: 3 is not a time record". date.mo:Expected error in mat time: "time>=?: # is not a time record". date.mo:Expected error in mat time: "time>=?: types of -x1 is not bound". oop.mo:Expected error in mat oop: "variable -x1-set! is not bound". ---- 11179,11188 ---- +--- 11194,11203 ---- exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". diff --git a/mats/patch-interpret-0-f-t-f b/mats/patch-interpret-0-f-t-f index 57d2ae318..7fbca4e23 100644 --- a/mats/patch-interpret-0-f-t-f +++ b/mats/patch-interpret-0-f-t-f @@ -1,5 +1,5 @@ -*** output-compile-0-f-t-f-experr/errors-compile-0-f-t-f 2026-03-10 17:14:08.862276807 -0700 ---- output-interpret-0-f-t-f-experr/errors-interpret-0-f-t-f 2026-03-10 17:15:35.970278454 -0700 +*** output-compile-0-f-t-f-experr/errors-compile-0-f-t-f Sat Mar 14 11:28:48 2026 +--- output-interpret-0-f-t-f-experr/errors-interpret-0-f-t-f Sat Mar 14 11:30:03 2026 *************** *** 24,31 **** primvars.mo:Expected error testing (call-in-continuation 1.0+2.0i (quote #f) values): Exception in call-in-continuation: 1.0+2.0i is not a continuation @@ -228,22 +228,24 @@ io.mo:Expected error in mat compress-parameters: "compress-format: "gzip" is not a supported format". io.mo:Expected error in mat compress-parameters: "compress-level: foo is not a supported level". *************** -*** 7870,7876 **** +*** 7870,7877 **** 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for testfile-mc-1a.ss: no such file or directory 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: file "testfile-mc-1a.ss" not found in source directories 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for ./testfile-mc-3a.ss: no such file or directory -! 7.mo:Expected error in mat eval: "compile: 7 is not an environment". +- 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". ---- 7870,7876 ---- + 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". +--- 7870,7877 ---- 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for testfile-mc-1a.ss: no such file or directory 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: file "testfile-mc-1a.ss" not found in source directories 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for ./testfile-mc-3a.ss: no such file or directory -! 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". ++ 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". + 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". *************** *** 8070,8077 **** 7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu". @@ -581,7 +583,7 @@ fx.mo:Expected error in mat r6rs:fx*: "fx*: <-int> is not a fixnum". fx.mo:Expected error in mat r6rs:fx*: "fx*: #f is not a fixnum". *************** -*** 11179,11188 **** +*** 11194,11203 **** exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". @@ -592,7 +594,7 @@ oop.mo:Expected error in mat oop: "m1: not applicable to 17". oop.mo:Expected error in mat oop: "variable -x1 is not bound". oop.mo:Expected error in mat oop: "variable -x1-set! is not bound". ---- 11179,11188 ---- +--- 11194,11203 ---- exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". diff --git a/mats/patch-interpret-0-t-f-f b/mats/patch-interpret-0-t-f-f index bb3216130..2c5194679 100644 --- a/mats/patch-interpret-0-t-f-f +++ b/mats/patch-interpret-0-t-f-f @@ -1,5 +1,5 @@ -*** output-compile-0-t-f-f-experr/errors-compile-0-t-f-f 2026-03-10 17:14:26.327284163 -0700 ---- output-interpret-0-t-f-f-experr/errors-interpret-0-t-f-f 2026-03-10 17:16:20.058248236 -0700 +*** output-compile-0-t-f-f-experr/errors-compile-0-t-f-f Sat Mar 14 11:32:58 2026 +--- output-interpret-0-t-f-f-experr/errors-interpret-0-t-f-f Sat Mar 14 11:34:28 2026 *************** *** 24,31 **** primvars.mo:Expected error testing (call-in-continuation 1.0+2.0i (quote #f) values): Exception in call-in-continuation: 1.0+2.0i is not a continuation @@ -220,22 +220,24 @@ io.mo:Expected error in mat compress-parameters: "compress-format: "gzip" is not a supported format". io.mo:Expected error in mat compress-parameters: "compress-level: foo is not a supported level". *************** -*** 7870,7876 **** +*** 7870,7877 **** 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for testfile-mc-1a.ss: no such file or directory 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: file "testfile-mc-1a.ss" not found in source directories 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for ./testfile-mc-3a.ss: no such file or directory -! 7.mo:Expected error in mat eval: "compile: 7 is not an environment". +- 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". ---- 7870,7876 ---- + 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". +--- 7870,7877 ---- 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for testfile-mc-1a.ss: no such file or directory 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: file "testfile-mc-1a.ss" not found in source directories 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for ./testfile-mc-3a.ss: no such file or directory -! 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". ++ 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". + 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". *************** *** 8273,8279 **** record.mo:Expected error in mat record25: "invalid value #\9 for foreign type uptr". @@ -518,28 +520,32 @@ foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #". foreign.mo:Expected error in mat foreign-C-types: "foreign-callable: invalid return value (73 74) from #". *************** -*** 10588,10596 **** +*** 10588,10598 **** foreign.mo:Expected error in mat foreign-ftype: "foreign-entry: 1000000 is not a string". foreign.mo:Expected error in mat foreign-ftype: "foreign-entry: no entry for "i am not defined"". foreign.mo:Expected error in mat foreign-ftype: "unexpected function ftype name outside pointer field A". ! foreign.mo:Expected error in mat foreign-ftype: "void*->void*: invalid foreign-procedure argument 0". foreign.mo:Expected error in mat foreign-ftype: "invalid syntax (ftype-ref integer-8 (void*->void* (make-ftype-pointer integer-8 0) 0))". ! foreign.mo:Expected error in mat foreign-ftype: "obj-void*->obj-void*: invalid foreign-procedure argument ". +! foreign.mo:Expected error in mat foreign-ftype: "get-int-uint-int-as-uint*: invalid foreign-procedure argument ". +! foreign.mo:Expected error in mat foreign-ftype: "get-int-uint-int: invalid foreign-procedure argument ". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". ---- 10588,10596 ---- +--- 10588,10598 ---- foreign.mo:Expected error in mat foreign-ftype: "foreign-entry: 1000000 is not a string". foreign.mo:Expected error in mat foreign-ftype: "foreign-entry: no entry for "i am not defined"". foreign.mo:Expected error in mat foreign-ftype: "unexpected function ftype name outside pointer field A". ! foreign.mo:Expected error in mat foreign-ftype: "uptr_to_uptr: invalid foreign-procedure argument 0". foreign.mo:Expected error in mat foreign-ftype: "invalid syntax (ftype-ref integer-8 (void*->void* (make-ftype-pointer integer-8 0) 0))". ! foreign.mo:Expected error in mat foreign-ftype: "uptr_to_uptr: invalid foreign-procedure argument ". +! foreign.mo:Expected error in mat foreign-ftype: "get_int_uint_int: invalid foreign-procedure argument ". +! foreign.mo:Expected error in mat foreign-ftype: "get_int_uint_int: invalid foreign-procedure argument ". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". *************** -*** 11179,11188 **** +*** 11194,11203 **** exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". @@ -550,7 +556,7 @@ oop.mo:Expected error in mat oop: "m1: not applicable to 17". oop.mo:Expected error in mat oop: "variable -x1 is not bound". oop.mo:Expected error in mat oop: "variable -x1-set! is not bound". ---- 11179,11188 ---- +--- 11194,11203 ---- exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". diff --git a/mats/patch-interpret-0-t-t-f b/mats/patch-interpret-0-t-t-f index 069557c30..7767c4b58 100644 --- a/mats/patch-interpret-0-t-t-f +++ b/mats/patch-interpret-0-t-t-f @@ -1,5 +1,5 @@ -*** output-compile-0-t-t-f-experr/errors-compile-0-t-t-f 2026-03-10 17:14:23.968283386 -0700 ---- output-interpret-0-t-t-f-experr/errors-interpret-0-t-t-f 2026-03-10 17:16:13.720253762 -0700 +*** output-compile-0-t-t-f-experr/errors-compile-0-t-t-f Sat Mar 14 11:34:14 2026 +--- output-interpret-0-t-t-f-experr/errors-interpret-0-t-t-f Sat Mar 14 11:34:37 2026 *************** *** 24,31 **** primvars.mo:Expected error testing (call-in-continuation 1.0+2.0i (quote #f) values): Exception in call-in-continuation: 1.0+2.0i is not a continuation @@ -220,22 +220,24 @@ io.mo:Expected error in mat compress-parameters: "compress-format: "gzip" is not a supported format". io.mo:Expected error in mat compress-parameters: "compress-level: foo is not a supported level". *************** -*** 7870,7876 **** +*** 7870,7877 **** 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for testfile-mc-1a.ss: no such file or directory 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: file "testfile-mc-1a.ss" not found in source directories 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for ./testfile-mc-3a.ss: no such file or directory -! 7.mo:Expected error in mat eval: "compile: 7 is not an environment". +- 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". ---- 7870,7876 ---- + 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". +--- 7870,7877 ---- 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for testfile-mc-1a.ss: no such file or directory 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: file "testfile-mc-1a.ss" not found in source directories 7.mo:Expected error in mat maybe-compile: "separate-compile: Exception in include: failed for ./testfile-mc-3a.ss: no such file or directory -! 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". ++ 7.mo:Expected error in mat eval: "interpret: 7 is not an environment". 7.mo:Expected error in mat eval: "compile: 7 is not an environment". 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". + 7.mo:Expected error in mat expand: "sc-expand: 7 is not an environment". *************** *** 8070,8077 **** 7.mo:Expected error in mat bytes-allocated: "bytes-allocated: invalid space gnu". @@ -502,7 +504,7 @@ record.mo:Expected error in mat r6rs-records-syntactic: "record-rtd: # is not a record". record.mo:Expected error in mat r6rs-records-syntactic: "parent record type is sealed ex3". *************** -*** 11179,11188 **** +*** 11194,11203 **** exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". @@ -513,7 +515,7 @@ oop.mo:Expected error in mat oop: "m1: not applicable to 17". oop.mo:Expected error in mat oop: "variable -x1 is not bound". oop.mo:Expected error in mat oop: "variable -x1-set! is not bound". ---- 11179,11188 ---- +--- 11194,11203 ---- exceptions.mo:Expected error in mat assert: "failed assertion (memq (quote b) (quote (1 2 a 3 4)))". exceptions.mo:Expected error in mat assert: "failed assertion (q ...)". exceptions.mo:Expected error in mat assert: "failed assertion (andmap symbol? (syntax (x ...)))". diff --git a/mats/root-experr-compile-0-f-f-f b/mats/root-experr-compile-0-f-f-f index 0e149e00b..bef2477c6 100644 --- a/mats/root-experr-compile-0-f-f-f +++ b/mats/root-experr-compile-0-f-f-f @@ -10591,6 +10591,8 @@ foreign.mo:Expected error in mat foreign-ftype: "unexpected function ftype name foreign.mo:Expected error in mat foreign-ftype: "void*->void*: invalid foreign-procedure argument 0". foreign.mo:Expected error in mat foreign-ftype: "invalid syntax (ftype-ref integer-8 (void*->void* (make-ftype-pointer integer-8 0) 0))". foreign.mo:Expected error in mat foreign-ftype: "obj-void*->obj-void*: invalid foreign-procedure argument ". +foreign.mo:Expected error in mat foreign-ftype: "get-int-uint-int-as-uint*: invalid foreign-procedure argument ". +foreign.mo:Expected error in mat foreign-ftype: "get-int-uint-int: invalid foreign-procedure argument ". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". foreign.mo:Expected error in mat foreign-callable: "foreign-callable: spam is not a procedure". @@ -10636,6 +10638,16 @@ ftype.mo:Expected error in mat ftype: "unexpected function ftype name outside po ftype.mo:Expected error in mat ftype: "unexpected function ftype name outside pointer field F1". ftype.mo:Expected error in mat ftype: "unexpected function ftype name outside pointer field F1". ftype.mo:Expected error in mat ftype: "unexpected function ftype name outside pointer field F1". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype P1 ftype-pointer (nongenerative 100))". +ftype.mo:Expected error in mat ftype: "not a gensym p". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype I1 int (nongenerative))". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype I1 int (ng #{int of6r270eh1theews7ikmyh8vo-0}))". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype I1 int nongenerative)". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype (I1 int (nongenerative)))". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype (I1 int (ng #{int of6r270eh1theews7ikmyh8vo-0})))". +ftype.mo:Expected error in mat ftype: "invalid syntax (define-ftype (I1 int nongenerative))". +ftype.mo:Expected error in mat ftype: "nongenerative disallowed for alias I1". +ftype.mo:Expected error in mat ftype: "make-record-type: incompatible record type int - different extra". ftype.mo:Expected error in mat ftype: "ftype-sizeof: function ftypes have unknown size". ftype.mo:Expected error in mat ftype: "cannot calculate offset for function index 10". ftype.mo:Expected error in mat ftype: "cannot calculate offset for function index 1". @@ -10788,6 +10800,8 @@ ftype.mo:Expected error in mat ftype: "invalid syntax (ftype-pointer? (struct (a ftype.mo:Expected error in mat ftype: "invalid syntax (ftype-&ref (struct (a int)) (a) x)". ftype.mo:Expected error in mat ftype: "invalid syntax (ftype-ref (struct (a int)) (a) x)". ftype.mo:Expected error in mat ftype: "invalid syntax (ftype-set! (struct (a int)) (a) x 0)". +ftype.mo:Expected error in mat ftype: "cannot use scheme-object pointer ftype s-pointer". +ftype.mo:Expected error in mat ftype: "not a scheme-object pointer ftype x-pointer". ftype.mo:Expected error in mat ftype-pointer-address-optimizations: "ftype-pointer-null?: () is not an ftype pointer". ftype.mo:Expected error in mat ftype-pointer-address-optimizations: "ftype-pointer=?: "oops" is not an ftype pointer". ftype.mo:Expected error in mat ftype-pointer-address-optimizations: "ftype-pointer=?: 17 is not an ftype pointer". @@ -10936,6 +10950,7 @@ ftype.mo:Expected error in mat ftype-lock-operations: "locked operation on non-b ftype.mo:Expected error in mat ftype-lock-operations: "locked operation on non-integer or non-word-size field unsupported (ftype-unlock! A (f f2 0 f3a) x)". ftype.mo:Expected error in mat ftype-lock-operations: "locked operation on non-base-type field unsupported (ftype-unlock! A (g) x)". ftype.mo:Expected error in mat ftype-lock-operations: "locked operation on non-native field unsupported (ftype-unlock! A (h) x)". +ftype.mo:Expected error in mat ftype-compile-file: "incompatible record type ftype-6 in testfile-ftype6.so". ftype.mo:Expected error in mat ftype-bits: "ftype-set!: invalid value 113886 for bit field of size 1". ftype.mo:Expected error in mat ftype-bits: "ftype-set!: invalid value #\a for bit field of size 3". ftype.mo:Expected error in mat ftype-bits: "ftype-set!: invalid value oops for bit field of size 14". diff --git a/release_notes/release_notes.stex b/release_notes/release_notes.stex index 19ce7110b..efeaa5beb 100644 --- a/release_notes/release_notes.stex +++ b/release_notes/release_notes.stex @@ -193,6 +193,27 @@ and partial support for more numeric predicates, including \scheme{even?}, \scheme{odd?}, \scheme{positive?}, \scheme{negative?} and \scheme{real-valued?}. +\subsection{Nongenerative ftype definitions (10.4.0)} + +The \scheme{define-ftype} form allows a \scheme{(nongenerative \var{uid})} +clause, which is analogous to the same kind of clause in +\scheme{define-record-type}. Supplying \var{uid} binds an ftype name +as equivalent to any previous definition declaring the same \var{uid}, or +it reports an error if the new definition is incompatible with a +previous definition declaring \var{uid}. + +The \scheme{(& \var{ftype-name} \var{ftype-name})} argument or result +type for a foreign procedure or callable now allows any pointer ftype +for the second \var{ftype-name}, instead of allowing only the name +\scheme{ftype-pointer} or the name \scheme{ftype-scheme-object-pointer}. + +The \scheme{make-ftype-scheme-object-pointer} form now supports an +optional ftype to be used for the constructed pointer, analogous to +specifying a pointer type for \scheme{make-ftype-pointer}. When constructing +a pointer using \scheme{make-ftype-scheme-object-pointer}, the specified +ftype must be a Scheme-object pointer type, while +\scheme{make-ftype-pointer} now rejects such types. + \subsection{In-place vector copying (10.3.0)} The \scheme{vector-copy!} procedure copies a subsequence diff --git a/s/base-lang.ss b/s/base-lang.ss index dada27b83..e99b0aa2e 100644 --- a/s/base-lang.ss +++ b/s/base-lang.ss @@ -190,11 +190,10 @@ ; language of foreign types (define-language Ltype - (nongenerative-id #{Ltype czp82kxwe75y4e77-1}) + (nongenerative-id #{Ltype czp82kxwe75y4e77-2}) (terminals (exact-integer (bits)) - ($ftd (ftd)) - ($fptd (fptd))) + ($ftd (ftd fptd))) (Type (t) (fp-integer bits) (fp-unsigned bits) @@ -206,8 +205,8 @@ (fp-fixnum) (fp-double-float) (fp-single-float) - (fp-fptd fptd) ; `fptd` is rtd for a pointer record - (fp-ftd& ftd fptd))) ; `ftd` describes passed value; `fptd` is rtd for a pointer record + (fp-ftd ftd) ; `ftd` is rtd for a pointer record + (fp-ftd& ftd1 ftd2))) ; `ftd1` describes passed value; `ftd2` is for a pointer record (define arity? (lambda (x) diff --git a/s/cmacros.ss b/s/cmacros.ss index da3887d6b..b89465f6a 100644 --- a/s/cmacros.ss +++ b/s/cmacros.ss @@ -357,7 +357,7 @@ ;; --------------------------------------------------------------------- ;; Version and machine types: -(define-constant scheme-version #x0a040003) +(define-constant scheme-version #x0a040004) (define-syntax define-machine-types (lambda (x) diff --git a/s/cp0.ss b/s/cp0.ss index a52ee3bba..219cf7fa1 100644 --- a/s/cp0.ss +++ b/s/cp0.ss @@ -2433,6 +2433,24 @@ (residualize-seq '() (list who e) ctxt) true-rec)])) + (let () + (define null-fptr-constant? + (lambda (e1) + (cp0-constant? (lambda (d) + (and ($ftype-pointer? d) + (eqv? 0 (ftype-pointer-address d)))) + e1))) + (define-inline 2 ftype-pointer-address + [(e) (let ([xval (value-visit-operand! e)]) + (nanopass-case (Lsrc Expr) (result-exp xval) + [(call ,preinfo ,pr ,e1 ,e2 ,e3) + (guard (and (eq? (primref-name pr) '$fptr-&ref) + (all-set? (prim-mask unsafe) (primref-flags pr)) + (null-fptr-constant? e1))) + (residualize-seq '() (list e) ctxt) + e2] + [else #f]))])) + (define-inline 2 (memq memv member assq assv assoc) [(x ls) (and (cp0-constant? null? (result-exp (value-visit-operand! ls))) diff --git a/s/cpcommonize.ss b/s/cpcommonize.ss index 47856826e..48e4baca6 100644 --- a/s/cpcommonize.ss +++ b/s/cpcommonize.ss @@ -200,9 +200,9 @@ (nanopass-case (Ltype Type) ty2 [(fp-single-float) #t] [else #f])] - [(fp-fptd ,fptd1) + [(fp-ftd ,ftd1) (nanopass-case (Ltype Type) ty2 - [(fp-fptd ,fptd2) (eq? fptd1 fptd2)] + [(fp-ftd ,ftd2) (eq? ftd1 ftd2)] [else #f])] [(fp-ftd& ,ftd1 ,fptd1) (nanopass-case (Ltype Type) ty2 diff --git a/s/cpnanopass.ss b/s/cpnanopass.ss index 463c0c70b..9c95753b2 100644 --- a/s/cpnanopass.ss +++ b/s/cpnanopass.ss @@ -4539,7 +4539,7 @@ [(fp-unsigned ,bits) (ptr->integer bits t toC)] [(fp-double-float) (build-float)] [(fp-single-float) (build-float)] - [(fp-fptd ,fptd) (build-fptr-ref)] + [(fp-ftd ,ftd) (build-fptr-ref)] [(fp-ftd& ,ftd ,fptd) (let ([x (make-tmp 't)]) (%seq @@ -4624,14 +4624,14 @@ ,(e1 `(goto ,Lbig)) (seq (label ,Lbig) ,e2))))) (e1 e2)))))) - (define (alloc-fptr fptd) - (let ([object? ($fptd-object? fptd)]) + (define (alloc-fptr ftd) + (let ([object? ($ftd-object? ftd)]) (let ([mk (%seq (set! ,%xp ,(%constant-alloc type-typed-object (fx* (constant ptr-bytes) (if object? 3 2)) #f)) (set! ,(%mref ,%xp ,(constant record-type-disp)) - (literal ,(make-info-literal #f 'object fptd 0))) + (literal ,(make-info-literal #f 'object ftd 0))) (set! ,(%mref ,%xp ,(constant record-data-disp)) ,%ac0) ,(if object? `(set! ,(%mref ,%xp ,(fx+ (constant record-data-disp) (constant ptr-bytes))) @@ -4690,10 +4690,10 @@ ,(unsigned->ptr bits lvalue))] [(fp-double-float) (receive-fp)] [(fp-single-float) (receive-fp)] - [(fp-fptd ,fptd) + [(fp-ftd ,ftd) (%seq ,(fromC %ac0) ; C integer return might be wiped out by alloc - ,(alloc-fptr fptd))] + ,(alloc-fptr ftd))] [(fp-ftd& ,ftd ,fptd) (%seq ,(fromC %ac0) diff --git a/s/cprep.ss b/s/cprep.ss index dcfdbb6c9..fa83cb4c2 100644 --- a/s/cprep.ss +++ b/s/cprep.ss @@ -120,7 +120,7 @@ [(fp-fixnum) 'fixnum] [(fp-double-float) 'double-float] [(fp-single-float) 'single-float] - [(fp-fptd ,fptd) 'ftype] + [(fp-ftd ,ftd) 'ftype] [(fp-ftd& ,ftd ,fptd) 'ftype]))) (define uncprep (lambda (x) diff --git a/s/fasl.ss b/s/fasl.ss index b820fe88b..9fbc1aa62 100644 --- a/s/fasl.ss +++ b/s/fasl.ss @@ -42,6 +42,7 @@ (define rtd-name (csv7:record-field-accessor #!base-rtd 'name)) (define rtd-uid (csv7:record-field-accessor #!base-rtd 'uid)) (define rtd-flags (csv7:record-field-accessor #!base-rtd 'flags)) +(define rtd-pm (csv7:record-field-accessor #!base-rtd 'pm)) (define-record-type table (fields (mutable count) (immutable hash) @@ -115,6 +116,12 @@ (let ([rtd ($record-type-descriptor x)]) (bld rtd t a? d) (let ([flds (rtd-flds rtd)]) + (when (eq? #t (rtd-pm rtd)) ; => created by `make-ftype-scheme-object-pointer` + (let ([v (ftype-scheme-object-pointer-object x)]) + (unless (fixmediate? v) + ($oops 'fasl-write + "cannot fasl ftype-scheme-object-pointer containing a non-fixnum, non-immediate value ~s" + v)))) (if (fixnum? flds) (let loop ([i 0]) (unless (fx= i flds) @@ -535,7 +542,8 @@ ($oops 'fasl "mismatch ~s ~s" x self))) (unless (eq-hashtable-ref (table-hash t) x #f) ($oops 'fasl "not in table!?")) - (if (and a? (fxlogtest a? (constant fasl-omit-rtds))) + (if (and a? (fxlogtest a? (constant fasl-omit-rtds)) + (or (not ($ftd? x)) (fx= ($generation x) (constant static-generation)))) (put-uptr p 0) ; => must be registered already at load time (wrf-fields (maybe-remake-rtd x t) p t a?))] [else diff --git a/s/ftype.ss b/s/ftype.ss index a3c7d81ca..4ca630075 100644 --- a/s/ftype.ss +++ b/s/ftype.ss @@ -250,9 +250,9 @@ ftype operators: ;; object like a bytevector; requires GC cooperation that is ;; triggered by the `#t` alt-pm protocol (last argument below) ($make-record-type #!base-rtd rtd - '#{ftype-scheme-object-pointer a9pth58056u34h517jsrqv-22} + '#{ftype-scheme-object-pointer a9pth58056u34h517jsrqv-23} '((immutable uptr offset)) - #t + #f #f #t)]) (make-compile-time-value @@ -287,13 +287,7 @@ ftype operators: (define ftd-stype (record-accessor rtd/ftd 0)) (define ftd-size (record-accessor rtd/ftd 1)) (define ftd-alignment (record-accessor rtd/ftd 2)) - (define fptd? (lambda (x) - ;; rtds that make sense in `ftd-pointer` instances - ;; and as foreign function arguments/results; that is, - ;; either a pointer to a known foreign type or a - ;; generic pointer - (or (ftd? x) (eq? x rtd/fptr) (eq? x rtd/object-fptr)))) - (define fptd-object? (lambda (x) (eq? x rtd/object-fptr))) + (define rtd-pm (lambda (x) ($object-ref 'scheme-object x (constant record-type-pm-disp)))) (define-syntax define-ftd-record-type (lambda (x) (define construct-name @@ -354,7 +348,9 @@ ftype operators: (lambda (x) #`'#,rtd))) (define constructor-name (lambda (parent uid stype size alignment field-name ...) - ($make-record-type rtd parent (or uid #,(symbol->string (datum record-name))) '() #f #f #f stype size alignment field-name ...))) + ($make-record-type rtd parent (or uid #,(symbol->string (datum record-name))) + '() #f #f (eq? #t (rtd-pm parent)) + stype size alignment field-name ...))) (define #,(construct-name #'record-name "ftd-" #'record-name "?") (record-predicate rtd)) #,@(ftd-accessors #'record-name #'(field ...))))]))) @@ -364,9 +360,11 @@ ftype operators: (define-ftd-record-type union #{rtd/ftd-union a9pth58056u34h517jsrqv-4} field*) (define-ftd-record-type array #{rtd/ftd-array a9pth58056u34h517jsrqv-5} length ftd) (define-ftd-record-type pointer #{rtd/ftd-pointer a9pth58056u34h517jsrqv-35} (mutable fptd)) + (define-ftd-record-type generic-pointer #{rtd/ftd-generic-pointer a9pth58056u34h517jsrqv-38} object? parent-rtd-as-predicate?) (define-ftd-record-type bits #{rtd/ftd-ibits a9pth58056u34h517jsrqv-19} eness field*) (define-ftd-record-type function #{rtd/ftd-function a9pth58056u34h517jsrqv-11} conv* arg-type* result-type) - (module (pointer-size alignment pointer-alignment native-base-ftds swap-base-ftds big-base-ftds little-base-ftds) + (module (pointer-size alignment pointer-alignment native-base-ftds swap-base-ftds big-base-ftds little-base-ftds + pointer-ftd scheme-object-pointer-ftd) (define alignment (lambda (max-alignment size) (gcd max-alignment size))) @@ -419,7 +417,28 @@ ftype operators: (define native-base-ftds (map (mfb 'native) base-types)) (define swap-base-ftds (map (mfb 'swapped) base-types)) (define big-base-ftds (map (mfb 'big) base-types)) - (define little-base-ftds (map (mfb 'little) base-types))) + (define little-base-ftds (map (mfb 'little) base-types)) + (define pointer-ftd + (make-ftd-generic-pointer rtd/fptr + (let* ([pname "generic"] + [gstring (format "~abo0c6ah4lf2bbo8mgrq6cglsy-~s-1" pname (constant machine-type-name))]) + ($intern3 gstring (string-length pname) (string-length gstring))) + 'ftype-pointer pointer-size pointer-alignment + #f #t)) + (define scheme-object-pointer-ftd + (make-ftd-generic-pointer rtd/object-fptr + (let* ([pname "obj-generic"] + [gstring (format "~abo0c6ah4lf2bbo8mgrq6cglsy-~s-2" pname (constant machine-type-name))]) + ($intern3 gstring (string-length pname) (string-length gstring))) + 'ftype-pointer pointer-size pointer-alignment + #t #t))) + (define ftd->predicate-rtd + (lambda (ftd) + (cond + [(ftd-generic-pointer? ftd) (or (and (ftd-generic-pointer-parent-rtd-as-predicate? ftd) + (record-type-parent ftd)) + ftd)] + [else ftd]))) (define expand-field-names (lambda (x*) (let f ([x* x*] [seen* '()]) @@ -442,15 +461,14 @@ ftype operators: [(find (let ([x (syntax->datum ftype)]) (lambda (ftd) (eq? (ftd-base-type ftd) x))) native-base-ftds)] - [(eq? (syntax->datum ftype) 'ftype-pointer) - (make-ftd-pointer rtd/fptr #f 'void pointer-size pointer-alignment rtd/fptr)] - [(eq? (syntax->datum ftype) 'ftype-scheme-object-pointer) - (make-ftd-pointer rtd/fptr #f 'void pointer-size pointer-alignment rtd/object-fptr)] + [(eq? (syntax->datum ftype) 'ftype-pointer) pointer-ftd] + [(eq? (syntax->datum ftype) 'ftype-scheme-object-pointer) scheme-object-pointer-ftd] [else (and error? (syntax-error ftype "unrecognized ftype name"))])])) (define expand-ftype (case-lambda - [(r defid ftype) (expand-ftype r '() defid ftype)] - [(r def-alist defid ftype) + [(r defid ftype) (expand-ftype r '() defid ftype #f)] + [(r def-alist defid ftype) (expand-ftype r def-alist defid ftype #f)] + [(r def-alist defid ftype uid) (define (check-size ftd) (unless (ftd-function? ftd) (let ([size (ftd-size ftd)]) @@ -458,7 +476,7 @@ ftype operators: (syntax-error ftype "non-fixnum overall size for ftype")))) ftd) (check-size - (let f/flags ([ftype ftype] [defid defid] [stype (syntax->datum ftype)] [packed? #f] [eness 'native] [funok? #t]) + (let f/flags ([ftype ftype] [defid defid] [stype (syntax->datum ftype)] [packed? #f] [eness 'native] [funok? #t] [uid uid]) (define (pad n k) (if packed? n (logand (+ n (- k 1)) (- k)))) (define (native-ftds) (case eness @@ -467,7 +485,14 @@ ftype operators: [(big) big-base-ftds] [(little) little-base-ftds] [else (error 'eness "unexpected ~s" eness)])) - (let f ([ftype ftype] [defid defid] [stype stype] [funok? funok?]) + (define (sanitize-field-subtype ftd) + (if (and (ftd-generic-pointer? ftd) (ftd-generic-pointer-object? ftd)) + rtd/fptr + ftd)) + (let f ([ftype ftype] [defid defid] [stype stype] [funok? funok?] [uid uid]) + (define (disallow-uid uid) + (when uid + (syntax-error defid "nongenerative disallowed for alias"))) (if (identifier? ftype) (cond [(assp (lambda (x) (bound-identifier=? ftype x)) def-alist) => @@ -485,32 +510,46 @@ ftype operators: (unless funok? (when (ftd-function? ftd) (syntax-error ftype "unexpected function ftype name outside pointer field"))) + (disallow-uid uid) ftd))] [(let ([maybe-ftd (r ftype)]) (and maybe-ftd (ftd? maybe-ftd) maybe-ftd)) => (lambda (ftd) (unless funok? (when (ftd-function? ftd) (syntax-error ftype "unexpected function ftype name outside pointer field"))) - ftd)] + (cond + [(and uid (ftd-generic-pointer? ftd)) + (make-ftd-generic-pointer ftd uid 'ftype-pointer pointer-size pointer-alignment + (ftd-generic-pointer-object? ftd) #f)] + [else + (disallow-uid uid) + ftd]))] [(find (let ([x (syntax->datum ftype)]) (lambda (ftd) (eq? (ftd-base-type ftd) x))) - (native-ftds))] + (native-ftds)) + => (lambda (ftd) + (disallow-uid uid) + ftd)] [(eq? (syntax->datum ftype) 'ftype-pointer) - (make-ftd-pointer rtd/fptr #f 'void pointer-size pointer-alignment rtd/fptr)] + (if uid + (make-ftd-generic-pointer rtd/fptr uid 'ftype-pointer pointer-size pointer-alignment #f #f) + pointer-ftd)] [(eq? (syntax->datum ftype) 'ftype-scheme-object-pointer) - (make-ftd-pointer rtd/fptr #f 'void pointer-size pointer-alignment rtd/object-fptr)] + (if uid + (make-ftd-generic-pointer rtd/object-fptr uid 'ftype-pointer pointer-size pointer-alignment #t #f) + scheme-object-pointer-ftd)] [else (syntax-error ftype "unrecognized ftype name")]) (syntax-case ftype () [(struct-kwd (field-name ftype) ...) (eq? (datum struct-kwd) 'struct) (let loop ([id* (expand-field-names #'(field-name ...))] - [ftd* (map (lambda (ftype stype) (f ftype #f stype #f)) + [ftd* (map (lambda (ftype stype) (f ftype #f stype #f #f)) #'(ftype ...) (datum (ftype ...)))] [offset 0] [alignment 1] [field* '()]) (if (null? id*) (let ([field* (reverse field*)]) - (make-ftd-struct (if (null? field*) rtd/fptr (caddar field*)) - (and defid (symbol->string (syntax->datum defid))) + (make-ftd-struct (if (null? field*) rtd/fptr (sanitize-field-subtype (caddar field*))) + (or uid (and defid (symbol->string (syntax->datum defid)))) stype (pad offset alignment) alignment field*)) (let ([ftd (car ftd*)]) (let ([offset (pad offset (ftd-alignment ftd))]) @@ -521,11 +560,11 @@ ftype operators: [(union-kwd (field-name ftype) ...) (eq? (datum union-kwd) 'union) (let ([id* (expand-field-names #'(field-name ...))] - [ftd* (map (lambda (ftype stype) (f ftype #f stype #f)) + [ftd* (map (lambda (ftype stype) (f ftype #f stype #f #f)) #'(ftype ...) (datum (ftype ...)))]) (let ([alignment (apply max 1 (map ftd-alignment ftd*))]) (make-ftd-union rtd/fptr - (and defid (symbol->string (syntax->datum defid))) + (or uid (and defid (symbol->string (syntax->datum defid)))) stype (pad (apply max 0 (map $ftd-size ftd*)) alignment) alignment @@ -535,9 +574,9 @@ ftype operators: (let ([n (datum ?n)]) (unless (and (integer? n) (exact? n) (>= n 0)) (syntax-error #'?n "invalid array size")) - (let ([ftd (f #'ftype #f (datum ftype) #f)]) - (make-ftd-array ftd - (and defid (symbol->string (syntax->datum defid))) + (let ([ftd (f #'ftype #f (datum ftype) #f #f)]) + (make-ftd-array (sanitize-field-subtype ftd) + (or uid (and defid (symbol->string (syntax->datum defid)))) stype (* n ($ftd-size ftd)) ; use `$ftd-size` for PPC Mac OS (ftd-alignment ftd) @@ -581,7 +620,7 @@ ftype operators: (syntax-error ftype "bit counts do not add up to 8, 16, 32, or 64")) (let ([offset (fxsrl bit-size 3)]) (make-ftd-bits rtd/fptr - (and defid (symbol->string (syntax->datum defid))) + (or uid (and defid (symbol->string (syntax->datum defid)))) stype offset (alignment (constant max-integer-alignment) offset) eness field*))))] [(*-kwd ftype) @@ -592,19 +631,19 @@ ftype operators: (lambda (a) (if (ftd? (cdr a)) (make-ftd-pointer rtd/fptr - (and defid (symbol->string (syntax->datum defid))) + (or uid (and defid (symbol->string (syntax->datum defid)))) stype pointer-size pointer-alignment (cdr a)) (let ([ftd (make-ftd-pointer rtd/fptr - (and defid (symbol->string (syntax->datum defid))) + (or uid (and defid (symbol->string (syntax->datum defid)))) stype pointer-size pointer-alignment #f)]) (set-cdr! a (cons ftd (cdr a))) ftd)))] [else (make-ftd-pointer rtd/fptr - (and defid (symbol->string (syntax->datum defid))) - stype pointer-size pointer-alignment (f #'ftype #f (datum ftype) #t))])] + (or uid (and defid (symbol->string (syntax->datum defid)))) + stype pointer-size pointer-alignment (f #'ftype #f (datum ftype) #t #f))])] [(function-kwd (arg-type ...) result-type) (eq? (datum function-kwd) 'function) - (f #'(function-kwd #f (arg-type ...) result-type) #f stype funok?)] + (f #'(function-kwd #f (arg-type ...) result-type) #f stype funok? uid)] [(function-kwd conv ... (arg-type ...) result-type) (eq? (datum function-kwd) 'function) (let () @@ -622,10 +661,10 @@ ftype operators: (filter-type r #'result-type #t)))] [(packed-kwd ftype) (eq? (datum packed-kwd) 'packed) - (f/flags #'ftype #f stype #t eness funok?)] + (f/flags #'ftype #f stype #t eness funok? uid)] [(unpacked-kwd ftype) (eq? (datum unpacked-kwd) 'unpacked) - (f/flags #'ftype #f stype #f eness funok?)] + (f/flags #'ftype #f stype #f eness funok? uid)] [(endian-kwd ?eness ftype) (eq? (datum endian-kwd) 'endian) (let ([new-eness (datum ?eness)]) @@ -638,7 +677,7 @@ ftype operators: [(native) 'swapped] [(swapped) 'native])] [else new-eness])]) - (f/flags #'ftype #f stype packed? eness funok?)))] + (f/flags #'ftype #f stype packed? eness funok? uid)))] [_ (syntax-error ftype "invalid ftype")])))))])) (define expand-fp-ftype (lambda (who what r ftype def-alist) @@ -647,7 +686,11 @@ ftype operators: (and (or (eq? (datum */&-kwd) '*) (eq? (datum */&-kwd) '&)) (identifier? #'ftype-name) - (member (datum ptr-kind) '(() (ftype-pointer) (ftype-scheme-object-pointer)))) + (let ([ptr-kind (datum ptr-kind)]) + (or (null? ptr-kind) + (and (eq? (datum */&-kwd) '&) + (null? (cdr ptr-kind)) + (symbol? (car ptr-kind)))))) (let* ([stype (syntax->datum ftype)] [ftd (cond @@ -673,16 +716,18 @@ ftype operators: [(null? (datum ptr-kind)) (cons ftd ftd)] [else - (let ([rep-fptd (if (eq? (car (datum ptr-kind)) 'ftype-scheme-object-pointer) - rtd/object-fptr - rtd/fptr)]) - (cons ftd - (make-ftd-pointer rtd/fptr #f 'void pointer-size pointer-alignment rep-fptd)))])))] + (let* ([ptr-name (car (syntax->list (syntax ptr-kind)))] + [rep-fptd (expand-ftype-name r ptr-name)]) + (unless (or (ftd-pointer? rep-fptd) + (ftd-generic-pointer? rep-fptd)) + (syntax-error ptr-name "not a pointer ftype name")) + (cons ftd rep-fptd))])))] [_ (cond [(and (identifier? ftype) (expand-ftype-name r ftype #f)) => (lambda (ftd) (cond - [(ftd-pointer? ftd) + [(or (ftd-pointer? ftd) + (ftd-generic-pointer? ftd)) ftd] [else (unless (ftd-base? ftd) @@ -695,26 +740,36 @@ ftype operators: (lambda (x) (cond [(ftd? x) - (if (ftd-pointer? x) - (ftd-pointer-fptd x) - ($oops who "~s is not an ftd-pointer" x))] + (cond + [(ftd-pointer? x) + (ftd-pointer-fptd x)] + [(ftd-generic-pointer? x) + x] + [else + ($oops who "~s is not an pointer ftd" x)])] [(pair? x) (cons (indirect-ftd-pointer (car x)) (indirect-ftd-pointer (cdr x)))] [else x]))) (define-who expand-ftype-defns - (lambda (r defid* ftype*) + (lambda (r defid* ftype* maybe-uid*) (define patch-pointer-ftds! (lambda (id ftd) (lambda (pointer-ftd) (ftd-pointer-fptd-set! pointer-ftd ftd)))) (let ([alist (map list defid*)]) (for-each - (lambda (defid ftype a) - (let ([ftd (expand-ftype r alist defid ftype)]) - (for-each (patch-pointer-ftds! defid ftd) (cdr a)) - (set-cdr! a ftd))) - defid* ftype* alist) + (lambda (defid ftype maybe-uid a) + (let ([uid (syntax-case maybe-uid () + [() #f] + [((_ uid)) + (unless (gensym? (datum uid)) + (syntax-error #'uid "not a gensym")) + (datum uid)])]) + (let ([ftd (expand-ftype r alist defid ftype uid)]) + (for-each (patch-pointer-ftds! defid ftd) (cdr a)) + (set-cdr! a ftd)))) + defid* ftype* maybe-uid* alist) (map cdr alist)))) (define unsigned-type (lambda (size) @@ -844,7 +899,7 @@ ftype operators: ($oops who "invalid address ~s" addr))))) (set! $verify-ftype-pointer (lambda (info fptr) - (unless (record? fptr (fptd-info-fptd info)) + (unless (record? fptr (ftd->predicate-rtd (fptd-info-fptd info))) ($source-violation (fptd-info-who info) (src-info-src info) #t (if ($fptr? fptr) "ftype mismatch for ~s" @@ -857,15 +912,22 @@ ftype operators: (set! $trans-define-ftype (lambda (x) (lambda (r) + (define (maybe-uid? x) + (syntax-case x (nongenerative) + [() #t] + [((nongenerative uid)) (identifier? #'uid)] + [_ #f])) (syntax-case x () - [(_ ftype-name ftype) - (identifier? #'ftype-name) + [(_ ftype-name ftype . maybe-uid) + (and (identifier? #'ftype-name) + (maybe-uid? #'maybe-uid)) #`(define-syntax ftype-name (make-compile-time-value - '#,(car (expand-ftype-defns r #'(ftype-name) #'(ftype)))))] - [(_ [ftype-name ftype] ...) - (andmap identifier? #'(ftype-name ...)) - (with-syntax ([(ftd ...) (expand-ftype-defns r #'(ftype-name ...) #'(ftype ...))]) + '#,(car (expand-ftype-defns r #'(ftype-name) #'(ftype) #'(maybe-uid)))))] + [(_ [ftype-name ftype . maybe-uid] ...) + (and (andmap identifier? #'(ftype-name ...)) + (andmap maybe-uid? #'(maybe-uid ...))) + (with-syntax ([(ftd ...) (expand-ftype-defns r #'(ftype-name ...) #'(ftype ...) #'(maybe-uid ...))]) #'(begin (define-syntax ftype-name (make-compile-time-value 'ftd)) @@ -877,6 +939,7 @@ ftype operators: [(_ ftype ?addr) (identifier? #'ftype) (let ([ftd (expand-ftype-name r #'ftype)]) + (when ($ftd-object? ftd) (syntax-error #'ftype "cannot use scheme-object pointer ftype")) (with-syntax ([addr-expr (if (ftd-function? ftd) #`(let ([x ?addr]) @@ -908,21 +971,27 @@ ftype operators: addr)))))])))) (set! $trans-make-ftype-scheme-object-pointer (lambda (x) - (define (build bv-e offset-e) - (let ([ftd rtd/object-fptr] - [level (if (fx= (optimize-level) 3) 3 2)]) + (define (build bv-e offset-e ftd) + (let ([level (if (fx= (optimize-level) 3) 3 2)]) #`(($primitive #,level $make-object-fptr) '#,ftd #,bv-e #,offset-e))) (syntax-case x () [(_ ?bv) - (build #'?bv #'0)] + (build #'?bv #'0 rtd/object-fptr)] [(_ ?bv ?offset) - (build #'?bv #'?offset)]))) + (build #'?bv #'?offset rtd/object-fptr)] + [(_ ?bv ?offset ftype) + (lambda (r) + (let ([ftd (expand-ftype-name r #'ftype)]) + (unless ($ftd-object? ftd) (syntax-error #'ftype "not a scheme-object pointer ftype")) + (build #'?bv #'?offset ftd)))]))) (set! $trans-ftype-pointer? (lambda (x) (lambda (r) (syntax-case x () [(_ x) #`(record? x '#,rtd/fptr)] - [(_ ftype x) (identifier? #'ftype) #`(record? x '#,(expand-ftype-name r #'ftype))])))) + [(_ ftype x) + (identifier? #'ftype) + #`(record? x '#,(ftd->predicate-rtd (expand-ftype-name r #'ftype #t)))])))) (set! $trans-ftype-scheme-object-pointer? (lambda (x) (lambda (r) @@ -952,11 +1021,11 @@ ftype operators: (set-who! ftype-pointer-ftype (lambda (fptr) (unless ($fptr? fptr) ($oops who "~s is not an ftype pointer" fptr)) - (let ([fptd (record-rtd fptr)]) + (let ([rtd (record-rtd fptr)]) (cond - [($ftd? fptd) - (ftd-stype (record-rtd fptr))] - [(eq? fptd rtd/object-fptr) + [($ftd? rtd) + (ftd-stype rtd)] + [(eq? rtd rtd/object-fptr) 'scheme-object] [else 'void])))) @@ -992,7 +1061,6 @@ ftype operators: (let fptr->sexpr ([fptr fptr]) (record fptr (let f ([fptr fptr] [ftd (record-rtd fptr)] [offset 0]) - ;; `ftd` is more generally a `fptd` (cond [(ftd-struct? ftd) `(struct @@ -1029,9 +1097,7 @@ ftype operators: (g (fx+ i 1))))))))] [(ftd-pointer? ftd) (cond - [(guard (c [#t #f]) (if ($fptd-object? (ftd-pointer-fptd ftd)) - ($fptr-object-fptr-ref fptr offset (ftd-pointer-fptd ftd)) - ($fptr-fptr-ref fptr offset (ftd-pointer-fptd ftd)))) => + [(guard (c [#t #f]) ($fptr-fptr-ref fptr offset (ftd-pointer-fptd ftd))) => (lambda (fptr) (if (zero? (ftype-pointer-address fptr)) 'null @@ -1067,14 +1133,18 @@ ftype operators: (guard (c [#t 'invalid]) ($fptr-ref (filter-foreign-type (ftd-base-type ftd)) (ftd-base-eness ftd) fptr offset))] - [(eq? ftd rtd/object-fptr) + [(ftd-generic-pointer? ftd) + (if (ftd-generic-pointer-object? ftd) + (f fptr rtd/object-fptr offset) + (f fptr rtd/fptr offset))] + [(eq? ftd rtd/fptr) ; can be instantiated directly + `(address ,($ftype-pointer-address fptr))] + [(eq? ftd rtd/object-fptr) ; can be instantiated directly (let ([offset (ftype-scheme-object-pointer-offset fptr)]) (if (eqv? offset 0) (ftype-scheme-object-pointer-object fptr) `(offset ,(ftype-scheme-object-pointer-object fptr) ,offset)))] - [(eq? ftd rtd/fptr) - `(address ,($ftype-pointer-address fptr))] - [else ($oops '$fptr->sexpr "unhandled fptd ~s" ftd)]))))))) + [else ($oops '$fptr->sexpr "unhandled ftd ~s" ftd)]))))))) (set! $unwrap-ftype-pointer (lambda (fptr) (let f ([ftd (record-rtd fptr)]) @@ -1099,9 +1169,7 @@ ftype operators: ($fptr-&ref fptr (* i (ftd-size ftd)) ftd))))] [(ftd-pointer? ftd) (let ([fptd (ftd-pointer-fptd ftd)]) - `(* ,(lambda () (if ($fptd-object? fptd) - ($fptr-object-fptr-ref fptr 0 fptd) - ($fptr-fptr-ref fptr 0 fptd))) + `(* ,(lambda () ($fptr-fptr-ref fptr 0 fptd)) ,(lambda (who v) ($verify-ftype-pointer (make-fptd-info who #f fptd) v) (#3%$fptr-fptr-set! fptr 0 v))))] @@ -1128,14 +1196,18 @@ ftype operators: ,type ,(lambda () (guard (c [#t 'invalid]) ($fptr-ref type (ftd-base-eness ftd) fptr 0))) ,(lambda (v) (#2%$fptr-set! (ftd-base-type ftd) type (ftd-base-eness ftd) fptr 0 v))))] - [(eq? ftd rtd/object-fptr) + [(ftd-generic-pointer? ftd) + (if (ftd-generic-pointer-object? ftd) + (f rtd/object-fptr) + (f rtd/fptr))] + [(eq? ftd rtd/fptr) ; can be instantiated directly + `(address ,($ftype-pointer-address fptr))] + [(eq? ftd rtd/object-fptr) ; can be instantiated directly (let ([offset (ftype-scheme-object-pointer-offset fptr)]) (if (eqv? offset 0) (ftype-scheme-object-pointer-object fptr) `(offset ,(ftype-scheme-object-pointer-object fptr) ,offset)))] - [(eq? ftd rtd/fptr) - `(address ,($ftype-pointer-address fptr))] - [else ($oops '$unwrap-ftype-pointer "unhandled fptd ~s" ftd)])))) + [else ($oops '$unwrap-ftype-pointer "unhandled ftd ~s" ftd)])))) (set! $trans-ftype-sizeof (lambda (x) (lambda (r) @@ -1149,12 +1221,13 @@ ftype operators: (set! $ftd? (lambda (x) (ftd? x))) - (set! $fptd? - (lambda (x) - (fptd? x))) - (set! $fptd-object? - (lambda (x) - (fptd-object? x))) + (set! $ftd-object? + (lambda (x) + (and (ftd-generic-pointer? x) + (ftd-generic-pointer-object? x)))) + (set! $ftd->predicate-rtd + (lambda (x) + (ftd->predicate-rtd x))) (set! $ftd-size (lambda (ftd) (constant-case special-initial-field-alignment? @@ -1177,7 +1250,7 @@ ftype operators: (ftd-size ftd)))]))) (set! $ftd-pair? ; represents `(& [])` `$expand-fp-ftype` (lambda (x) - (and (pair? x) (ftd? (car x)) ($fptd? (cdr x))))) + (and (pair? x) (ftd? (car x)) ($ftd? (cdr x))))) (set! $ftd-alignment (lambda (x) (ftd-alignment x))) @@ -1333,9 +1406,7 @@ ftype operators: (cons (list ftd a-id a len) idx*)))))] [(ftd-pointer? ftd) (let ([elt-fptd (ftd-pointer-fptd ftd)]) - (let ([fptr-expr (if (eq? elt-fptd rtd/object-fptr) - #`(#3%$fptr-object-fptr-ref #,fptr-expr #,offset '#,elt-fptd) - #`(#3%$fptr-fptr-ref #,fptr-expr #,offset '#,elt-fptd))]) + (let ([fptr-expr #`(#3%$fptr-fptr-ref #,fptr-expr #,offset '#,elt-fptd)]) (if (memv (syntax->datum a) '(* 0)) (if ($ftd? elt-fptd) (loop elt-fptd (cdr a*) fptr-expr 0 idx*) @@ -1346,6 +1417,18 @@ ftype operators: (trans-idx a-id a #f elt-fptd (make-index-info whoid a ftd #f)) (cons (list ftd a-id a #f) idx*)) (syntax-error a "cannot dereference generic pointer"))))))] + [(ftd-generic-pointer? ftd) + (let ([fptr-expr (if (ftd-generic-pointer-object? ftd) + #`(#3%$fptr-object-fptr-ref #,fptr-expr #,offset '#,ftd) + #`(#3%$fptr-fptr-ref #,fptr-expr #,offset '#,ftd))]) + (if (memv (syntax->datum a) '(* 0)) + (syntax-error a "cannot dereference generic pointer") + (let ([a-id (car (generate-temporaries (list #'i)))]) + (if (null? (cdr a*)) + (loop ftd (cdr a*) fptr-expr + (trans-idx a-id a #f ftd (make-index-info whoid a ftd #f)) + (cons (list ftd a-id a #f) idx*)) + (syntax-error a "cannot dereference generic pointer")))))] [(ftd-bits? ftd) (let ([s (syntax->datum a)]) (cond @@ -1506,9 +1589,11 @@ ftype operators: bitfield)] [(ftd-base? ftd) (do-base (filter-foreign-type (ftd-base-type ftd)) (ftd-base-eness ftd) offset)] [(ftd-pointer? ftd) - (if (eq? (ftd-pointer-fptd ftd) rtd/object-fptr) - #`(#3%$fptr-object-fptr-ref #,fptr-expr #,offset '#,(ftd-pointer-fptd ftd)) - #`(#3%$fptr-fptr-ref #,fptr-expr #,offset '#,(ftd-pointer-fptd ftd)))] + #`(#3%$fptr-fptr-ref #,fptr-expr #,offset '#,(ftd-pointer-fptd ftd))] + [(ftd-generic-pointer? ftd) + (if (ftd-generic-pointer-object? ftd) + #`(#3%$fptr-object-fptr-ref #,fptr-expr #,offset '#,ftd) + #`(#3%$fptr-fptr-ref #,fptr-expr #,offset '#,ftd))] [(ftd-function? ftd) ($make-foreign-procedure 'make-ftype-pointer (ftd-function-conv* ftd) @@ -1588,6 +1673,11 @@ ftype operators: (unless #,(fx= (optimize-level) 3) ($verify-ftype-pointer '#,(make-fptd-info 'ftype-set! val-expr (ftd-pointer-fptd ftd)) val)) (#3%$fptr-fptr-set! #,fptr-expr #,offset val))] + [(ftd-generic-pointer? ftd) + #`(begin + (unless #,(fx= (optimize-level) 3) + ($verify-ftype-pointer '#,(make-fptd-info 'ftype-set! val-expr ftd) val)) + (#3%$fptr-fptr-set! #,fptr-expr #,offset val))] [else (syntax-error q "non-scalar value cannot be assigned")]))))))))))) (syntax-case q () [(_ ftype (a ...) fptr-expr val-expr) diff --git a/s/pb.ss b/s/pb.ss index 31e6d9458..3a4ea2a74 100644 --- a/s/pb.ss +++ b/s/pb.ss @@ -1890,7 +1890,7 @@ [(fp-scheme-object) 'uptr] [(fp-fixnum) 'uptr] [(fp-u8*) 'void*] - [(fp-fptd ,fptd) 'void*] + [(fp-ftd ,fptd) 'void*] [(fp-void) 'void] [else (if (eq? (subset-mode) 'system) (sorry! who "unhandled type in prototype ~s" type) diff --git a/s/primdata.ss b/s/primdata.ss index 5563b554c..61d890a05 100644 --- a/s/primdata.ss +++ b/s/primdata.ss @@ -1391,7 +1391,7 @@ (fprintf [sig [(textual-output-port string sub-ptr ...) -> (void)]] [flags true]) (fresh-line [sig [() (textual-output-port) -> (void)]] [flags true]) (ftype-pointer=? [sig [(ftype-pointer ftype-pointer) -> (boolean)]] [flags pure mifoldable discard cp03]) - (ftype-pointer-address [sig [(ftype-pointer) -> (exact-integer)]] [flags mifoldable discard true]) + (ftype-pointer-address [sig [(ftype-pointer) -> (exact-integer)]] [flags mifoldable discard true cp02]) (ftype-pointer-ftype [sig [(ftype-pointer) -> (symbol/list)]] [flags mifoldable discard true]) (ftype-pointer-null? [sig [(ftype-pointer) -> (boolean)]] [flags pure mifoldable discard]) (ftype-pointer->sexpr [sig [(ftype-pointer) -> (ptr)]] [flags]) @@ -2201,8 +2201,7 @@ ($fptr-spin-lock! [flags single-valued]) ($fptr-unlock! [flags single-valued]) ($fp-type->pred [flags single-valued]) - ($fptd? [sig [(ptr) -> (boolean)]] [flags pure unrestricted mifoldable]) - ($fptd-object? [sig [(sub-ptr) -> (boolean)]] [flags pure unrestricted mifoldable]) + ($ftd-object? [sig [(sub-ptr) -> (boolean)]] [flags pure unrestricted mifoldable]) ($ftd? [sig [(ptr) -> (boolean)]] [flags pure unrestricted mifoldable]) ($ftd-alignment [flags single-valued]) ($ftd-pair? [sig [(ptr) -> (boolean)]] [flags pure unrestricted mifoldable]) @@ -2213,6 +2212,7 @@ ($ftd-union? [sig [(sub-ptr) -> (boolean)]] [flags discard]) ($ftd-unsigned? [flags single-valued]) ($ftd->members [flags single-valued]) + ($ftd->predicate-rtd [flags single-valued]) ($ftype-guardian-oops [flags]) ($ftype-pointer? [sig [(ptr) -> (boolean)]] [flags pure unrestricted mifoldable]) ($fxaddress [flags single-valued unrestricted alloc]) @@ -2526,7 +2526,7 @@ ($vector-set!-check? [sig [(ptr ptr) -> (boolean)]] [flags unrestricted discard]) ($vector-set-immutable! [sig [(nonempty-vector) -> (void)]] [flags true]) ($verify-ftype-address [flags single-valued cp02]) - ($verify-ftype-pointer [flags single-valued]) + ($verify-ftype-pointer [flags single-valued mifoldable]) ($visit [flags single-valued]) ($visit-library [flags single-valued]) ($with-fasl-target [flags single-valued]) diff --git a/s/reboot-record.ss b/s/reboot-record.ss index 2450317d9..073f8202a 100644 --- a/s/reboot-record.ss +++ b/s/reboot-record.ss @@ -1,4 +1,4 @@ -;; Needs to implements the same record API as the current Chez Scheme +;; Needs to implement the same record API as the current Chez Scheme ;; implementation. It doesn't have to be too fast, so it can just use ;; vectors and extra wrappers. Use `define-record-type/orig` here to ;; get the host Scheme's `define-record-type`, and otherwise use `#%` @@ -423,7 +423,11 @@ (lambda (v) (cond [(re:rtd? v) - (error 'csv7:record-field-accessor "need more rtd support ~s ~s" v idx)] + (cond + [(< idx (re:rtd-count new-base-rtd)) + ((base-rtd-accessor idx) v)] + [else + (list-ref (re:rtd-extras v) (- idx (re:rtd-count new-base-rtd)))])] [(re:record? v) (vector-ref (re:record-vec v) idx)] [else @@ -512,7 +516,7 @@ [(< i (re:rtd-count new-base-rtd)) ((base-rtd-accessor i) v)] [else - (error '$object-ref "not yet supported for base-rtd subtypes")])] + (list-ref (re:rtd-extras v) (- i (re:rtd-count new-base-rtd)))])] [(re:record? v) (vector-ref (re:record-vec v) i)] [else (check-allowed-host-record v) diff --git a/s/reboot.ss b/s/reboot.ss index 1a7a0cc95..b82b57059 100644 --- a/s/reboot.ss +++ b/s/reboot.ss @@ -415,6 +415,7 @@ (define-primitive $ftd-pair? (lambda (x) (and (pair? x) (#%$ftd? (car x))))) (define-primitive $fptd? #%$ftd?) (define-primitive $filter-foreign-type #%$filter-foreign-type) +(define-primitive $ftype-pointer? #%$ftype-pointer?) (define-primitive $make-fmt->expr #%$make-fmt->expr) (define-primitive $parse-format-string (lambda args #f)) diff --git a/s/record.ss b/s/record.ss index a0f57421d..46195835e 100644 --- a/s/record.ss +++ b/s/record.ss @@ -635,7 +635,6 @@ (and (not (fixnum? flds1)) (not (fixnum? flds2)) (fx= (length flds1) (length flds2)) (andmap same-field? flds1 flds2))))) - ; following assumes extras match (let () (define (squawk what) ($oops who "incompatible record type ~s - ~a" name what)) (unless (eq? ($record-type-descriptor rtd) base-rtd) (squawk "different base rtd")) @@ -646,7 +645,12 @@ (squawk "different pointer mask"))) (unless (= (rtd-mpm rtd) mpm) (squawk "different mutability")) (unless (fx= (rtd-flags rtd) flags) (squawk "different flags")) - (unless (eq? (rtd-size rtd) size) (squawk "different size"))) + (unless (eq? (rtd-size rtd) size) (squawk "different size")) + (let f ([i (fx- (fxsrl (constant size-record-type) (constant log2-ptr-bytes)) 1)] [extras extras]) + (unless (null? extras) + ;; fasl loading is more picky than `equal?`; it allows enough to accomodate "ftype.ss" + (unless (equal? ($record-ref rtd i) (car extras)) (squawk "different extra")) + (f (fx+ i 1) (cdr extras))))) rtd)] [else (let* ([len (if (not parent) 1 (vector-length (rtd-ancestry parent)))] diff --git a/s/syntax.ss b/s/syntax.ss index ae742b2fa..95da435ce 100644 --- a/s/syntax.ss +++ b/s/syntax.ss @@ -664,7 +664,7 @@ [(void) (and void-okay? `(fp-void))] [else (cond - [($fptd? x) `(fp-fptd ,x)] + [($ftd? x) `(fp-ftd ,x)] [($ftd-pair? x) `(fp-ftd& ,(car x) ,(cdr x))] [else #f])]) ($oops #f "invalid ~a ~a specifier ~s" who what x))))) @@ -8959,7 +8959,7 @@ [(big) 'utf-32be] [(unknown) 'utf-32])])] [else - (and (or ($fptd? type) ($ftd-pair? type)) + (and (or ($ftd? type) ($ftd-pair? type)) type)]))) (define $fp-type->pred @@ -9201,9 +9201,9 @@ (check-floats-allowed pos) #f] [else #f]) - (if (or ($fptd? type) ($ftd-pair? type)) - (let ([ftd (if ($fptd? type) type (cdr type))]) - #`(#,(if unsafe? #'() #`((unless (record? x '#,ftd) (err ($moi) x)))) + (if (or ($ftd? type) ($ftd-pair? type)) + (let ([ftd (if ($ftd? type) type (cdr type))]) + #`(#,(if unsafe? #'() #`((unless (record? x '#,($ftd->predicate-rtd ftd)) (err ($moi) x)))) (x) (#,type))) (with-syntax ([pred (datum->syntax #'foreign-procedure ($fp-type->pred type))] @@ -9262,7 +9262,7 @@ [#,(cdr result-type)] #,(if unsafe? #`[] - #`[(unless (record? &-result '#,(cdr result-type)) (err ($moi) &-result))]))] + #`[(unless (record? &-result '#,($ftd->predicate-rtd (cdr result-type))) (err ($moi) &-result))]))] [else #'([] [] [])])]) (let ([wrap-result (with-syntax ([result-filter @@ -9564,10 +9564,11 @@ [] [])] [else (cond - [($fptd? result-type) - (with-syntax ([type (datum->syntax #'foreign-callable result-type)]) + [($ftd? result-type) + (with-syntax ([pred-type (datum->syntax #'foreign-callable ($ftd->predicate-rtd result-type))] + [type (datum->syntax #'foreign-callable result-type)]) #`((lambda (x) - #,@(if unsafe? #'() #'((unless (record? x 'type) (err x)))) + #,@(if unsafe? #'() #'((unless (record? x 'pred-type) (err x)))) x) type [] []))] diff --git a/s/x86.ss b/s/x86.ss index bc530842a..7086c2b78 100644 --- a/s/x86.ss +++ b/s/x86.ss @@ -2323,7 +2323,7 @@ (cons (load-content n ($ftd-size ftd)) locs) (fx+ n (fxlogand (fx+ ($ftd-size ftd) 3) -4)) #f)] - [(fp-fptd ,fptd) + [(fp-ftd ,ftd) (cond [(and result-type (fill-result-pointer-from-registers? result-type))