Listing 1: Replacing ReleaseDate with GetReleaseDate().
__interface IUltraMax
{
[id(1), helpstring("Log on")]
HRESULT LogOn([in] BSTR LoginID, [in] BSTR Password);
[id(2), helpstring("Get song list")]
HRESULT GetSongs([out] LONG* Size,
[out, retval, size_is(, *Size)] SongInfo** Songs);
[id(3), helpstring("Set song list")]
HRESULT SetSongs([in] LONG Size, [in, size_is(Size)] SongInfo* Songs);
[id(4), helpstring("Get next music release date")]
HRESULT GetReleaseDate([in, out] DATE* CurrentDate);
// Serialization / deserialization
[id(5), helpstring("Serializes object to text"), hidden]
HRESULT ToString([out, retval] BSTR* Text);
[id(6), helpstring("Deserializes object from text"), hidden]
HRESULT InitFromString([in] BSTR Text);
};