     [ type>> c-type-align ] [ max ] map-reduce ;
 PRIVATE>
 
-M: struct byte-length class "struct-size" word-prop ; foldable
+M: struct byte-length class "c-type" word-prop size>> ; foldable
 
 ! class definition
 


M: struct-class valid-superclass? drop f ;

GENERIC: struct-slots ( struct-class -- slots )

M: struct-class struct-slots "struct-slots" word-prop ;

! struct allocation



: make-struct-prototype ( class -- prototype )
    dup struct-needs-prototype? [
        [ "c-type" word-prop size>> <byte-array> ]
        [ memory>struct ]
        [ struct-slots ] tri
        [
