summary refs log tree commit diff
path: root/m4
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-05-16 10:05:24 +0200
committerLudovic Courtès <ludo@gnu.org>2018-05-23 10:21:02 +0200
commit7874bbbb9f09cc14ea3e179fd0fa10da5f90cfc7 (patch)
tree858882215ed759814f841b714250434e975f604f /m4
parent56f9d442e0b5624130042f69f33ea5bd7e970798 (diff)
downloadguix-7874bbbb9f09cc14ea3e179fd0fa10da5f90cfc7.tar.gz
records: Insert record type ABI checks in constructors.
* guix/records.scm (print-record-abi-mismatch-error): New procedure.
<top level>: Add 'set-exception-printer!' call.
(current-abi-identifier, abi-check): New procedures.
(make-syntactic-constructor): Add #:abi-cookie parameter.  Insert calls
to 'abi-check'.
(define-record-type*)[compute-abi-cookie]: New procedure.
Use it and emit a definition of the 'current-abi-identifier' for TYPE.
* tests/records.scm ("ABI checks"): New test.
Diffstat (limited to 'm4')
0 files changed, 0 insertions, 0 deletions