.. include:: /../getting_started/vars.rst .. _section-Product-Ada: RTI Ada Language Support ************************ The following issues affect backward compatibility in *Ada Language Support* starting in Release 6.0.0. APIs ==== Write_W_Params requires its DDS.WriteParams_T argument to be modifiable ----------------------------------------------------------------------- Starting in 6.0.0, the third parameter of the ``Write_W_Param`` |DWs| method has changed from “in” to “in out”, meaning the argument can be modified. This is a backwards-incompatible API change. Previously, a constant ``DDS.WriteParams_T`` record could be used as the argument, but this will no longer be possible. This change aligns the Ada API with its C counterpart, which has always required a non-const pointer to a ``DDS_WriteParams_t`` structure. Wide character representation change ------------------------------------ Release 6.0.0 changes the size of wide characters from 32 bits to 16 bits. Several names, APIs, and types in *Ada Language Support* have been modified, in backwards-incompatible ways, to reflect this change and avoid possible confusion: * ``DDS.Wchar`` is now 16-bits wide. * ``DDS.Wwchars_Ptr`` has been replaced with ``DDS.Wchars_Ptr``. * ``DDS.WValue`` now receives a ``Wchars_Ptr`` and returns an ``Interfaces.C.char16_array``. * Function ``DDS.``“+” related to wide character pointer arithmetic now uses ``Wchar_Ptr``. * Function ``DDS.Peek`` now receives a ``Wchars_Ptr`` and returns a ``Standard.Wide_Character``. * Function ``DDS.To_DDS_Wide_String`` now receives a ``Standard.Wide_String`` argument. * Function ``DDS.To_Standard_Wide_Wide_String`` has been replaced with ``DDS.To_Standard_Wide_String``. * ``DDS.Copy`` procedures related to wide strings now use ``Standard.Wide_Strings`` instead of ``Standard.Wide_Wide_Strings``.