Arrays of type CMPI_chars are created as type CMPI_string by SFCB under the covers. Data of either CMPI_string or CMPI_chars can be legally passed into addElement operations. However, using the C++ wrapper results in a type mismatch exception when using c-style strings. A previous fix in 2.0.3 added a CmpiString constructor, but the extra encapsulation is superfluous.
CmpiArray array = CmpiArray(MAX_SIZE, CMPI_chars); // This works array = CmpiData(CmpiString("a doubly encapsulated string!"); // This throws an exception array = CmpiData("c-style string.");