     test_struct_16 { float int } cdecl alien-indirect ;
 
 { 1.0 2 } [
-    1.0 2 callback-13 callback-13-test
-    [ x>> ] [ a>> ] bi
-] unit-test-with-destructors
+    1.0 2 callback-13 [
+        callback-13-test [ x>> ] [ a>> ] bi
+    ] with-callback
+] unit-test
 
 FUNCTION: test_struct_14 ffi_test_44 ( ) ; inline
 

    [ [ drop + ] [ - nip ] 3bi test-struct-11 <struct-boa> ] alien-callback ;

{ 8 } [
    3 4 fastcall-ii-callback fastcall-ii-indirect
] unit-test-with-destructors

[ 13 ] [
    3 4 5 fastcall-iii-callback fastcall-iii-indirect
] unit-test-with-destructors

[ 13 ] [
    3 4.0 5 fastcall-ifi-callback fastcall-ifi-indirect
] unit-test-with-destructors

[ 19 ] [
    3 4.0 5 6 fastcall-ifii-callback fastcall-ifii-indirect
] unit-test-with-destructors

[ S{ test-struct-11 f 7 -1 } ] [
    3 4 fastcall-struct-return-ii-callback fastcall-struct-return-ii-indirect
] unit-test-with-destructors

[ S{ test-struct-11 f 7 -3 } ] [
    3 4 7 fastcall-struct-return-iii-callback fastcall-struct-return-iii-indirect
] unit-test-with-destructors

: x64-regression-1 ( -- c )
    int { int int int int int } cdecl [ + + + + ] alien-callback ;

    int { int int int int int } cdecl alien-indirect ; inline

[ 661 ] [
    100 500 50 10 1 x64-regression-1 [ x64-regression-2 ] with-callback
] unit-test

! Stack allocation
: blah ( -- x ) { RECT } [
    1.5 >>x 2.0 >>y [ x>> ] [ y>> ] bi * >fixnum
] with-scoped-allocation ;

[ 3 ] [ blah ] unit-test

