[
https://issues.apache.org/jira/browse/THRIFT-5620?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Geyer updated THRIFT-5620:
-------------------------------
Description:
Currently, the Delphi compiler generates code that uses TBytes and
System.String types. Both use dynamically allocated memory.
Due to the way in which Delphi manages memory this implies, that such
interfaces cannot be shared between modules unless ShareMem or some other
shared memory manager is explicitly used in all affected modules, which is an
undesirable option in certain cases for a number of reasons.
Goal of this ticket is to enable the Delphi code generator to either directly
use COM types (e.g. System.WideString instead of System.String) or implement
any other safe means where necessary to deal with this issue (and especially
without the use of ShareMem or the like).
was:
Currently, the Delphi compiler generates code that uses TBytes and
System.String types. Both use dynamically allocated memory.
Due to the way in which Delphi manages memory this implies, that such
interfaces cannot be shared between modules unless ShareMem or some other
shared memory manager is explicitly used in all affected modules, which is an
undesirable option in certain cases for a number of reasons.
Goal of this ticket is to enable the Delphi code generator to either directly
use COM types (e.g. System.WideString instead of System.String) or implement
any other safe means where necessary.
> Option to force usage of COM types to allow for cross-module references
> -----------------------------------------------------------------------
>
> Key: THRIFT-5620
> URL: https://issues.apache.org/jira/browse/THRIFT-5620
> Project: Thrift
> Issue Type: New Feature
> Components: Delphi - Compiler
> Reporter: Jens Geyer
> Assignee: Jens Geyer
> Priority: Major
>
> Currently, the Delphi compiler generates code that uses TBytes and
> System.String types. Both use dynamically allocated memory.
> Due to the way in which Delphi manages memory this implies, that such
> interfaces cannot be shared between modules unless ShareMem or some other
> shared memory manager is explicitly used in all affected modules, which is an
> undesirable option in certain cases for a number of reasons.
> Goal of this ticket is to enable the Delphi code generator to either directly
> use COM types (e.g. System.WideString instead of System.String) or implement
> any other safe means where necessary to deal with this issue (and especially
> without the use of ShareMem or the like).
--
This message was sent by Atlassian Jira
(v8.20.10#820010)