RO Version 1609: C++Builder _Invk code does not compile with some methdos/structs

Hello,

I am rebuilding some of my apps with the 1609 version and just found this error with some of the code in the _Invk units:

[bcc32 Error] TSBackups_Invk.cpp(103): E2285 Could not find a match for 'OpenArray<UnicodeString>::OpenArray(const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *,const char *)'
  Full parser context
    TSBackups_Invk.cpp(68): parsing: void _fastcall TBackups_Invoker::Invoke_AddHistorialBackup(const _di_IInterface,const _di_IROMessage,const _di_IROTransport,TROResponseOptions &)

This is in this section of code:

		if (__Message->CanRemapParameters())
			__Message->RemapParameters(OPENARRAY(System::UnicodeString, ("TareaGUID", "RespaldoGUID", "Resultado", "Bucket", "Archivo", "Size", "DuracionUpload", "DuracionTotal", "MD5", "VersionSistema", 
																		 "FechaExpiracionTarea", "ClienteId", "HASPId", "TipoTarea", "TipoBD", "TipoRespaldo", "NombreTarea", "Periodicidad", "EmailsProcesoOk", 
																		 "EmailsProcesoNoOk")));

The problem is that the ARRAYOFCONST macro just supports 19 parameters.

I am not sure what can I do to workaround this right now?

I was able to avoid the compiler error like this:

		if (__Message->CanRemapParameters())
		{
			System::UnicodeString v[] = {"TareaGUID", "RespaldoGUID", "Resultado", "Bucket", "Archivo", "Size", "DuracionUpload", "DuracionTotal", "MD5", "VersionSistema",
																	 "FechaExpiracionTarea", "ClienteId", "HASPId", "TipoTarea", "TipoBD", "TipoRespaldo", "NombreTarea", "Periodicidad", "EmailsProcesoOk",
																	 "EmailsProcesoNoOk"};

			__Message->RemapParameters(v, ARRAYSIZE(v) - 1);
		}

I guess this could be changed in the codegen to avoid this kind of issues on the C++Builder side?

Hi,

in general, this code is needed only if TROJSONMessage.IndexedParametersSupport is set.
otherwise, you can just remove this code.

Logged as bugs://D19528.

bugs://D19528 was closed as fixed.

Hi,

fix will be in .1613

Thank you!