An Any is populated with a union whose member is not empty. Call dynAny->from_any (Any); to put the Any'd union into a DynAny object. Call dynAny->to_any () : Any to get the Any'd union from a DynAny object. Repeat the process except this time, use a union whose member is empty, ie, _default () has been called on the union. from_any (Any) succeeded. to_any () : Any failed. to_any () needs to check for an empty union before adding its member to a CDR stream.