In Winapi.Windows.pas Delphi XE3, many C types that were previously defined as PWideChar and PAnsiChar are now defined as MarshaledString and MarshaledAString respectively (e.g. PWChar , LPSTR ):
PWChar = MarshaledString; LPSTR = MarshaledAString;
Indeed, in System.pas , MarshaledString and MarshaledAString equivalent to PWideChar and PAnsiChar respectively,
MarshaledString = PWideChar; MarshaledAString = PAnsiChar;
but what is the background to this decision? I mean, why should Embarcadero redefine such C string types?
source share