Improved complex type support