package test:resource-aggregates; interface test { resource thing { constructor(v: u32); } record r1 { thing: thing } record r2 { thing: borrow } record r3 { thing1: borrow, thing2: thing, } type t1 = tuple; type t2 = tuple>; variant v1 { thing(thing), } variant v2 { thing(borrow), } type l1 = list; type l2 = list>; foo: func( r1: r1, r2: r2, r3: r3, t1: t1, t2: t2, v1: v1, v2: v2, l1: l1, l2: l2, o1: option, o2: option>, result1: result, result2: result>, ) -> u32; } world resource-aggregates { import test; export test; }