[fpc-pascal] resourcestring and const arrays
craig at scootersoftware.com
Sat Jun 25 01:56:58 CEST 2011
On 6/24/2011 4:14 PM, Marco van de Voort wrote:
> No, this is a problem of gettext.
It's a problem with FPC's resourcestring implementation, rather than
something specific to gettext. I could use SetResourceStrings directly
(objpas.pp) and it will have the same issue.
> For this to work you really need resource types that work based on
> replacing memory areas, or use _()
What do you mean by replacing memory areas? Runtime patching? Does
something exist that supports that? On Windows we're using resource
DLLs directly, without going through gettext, so I really don't want to
switch to _(). I don't mind low-level hacking though. ;)
It looks like Delphi writes a table of these kinds of resource string
uses and fixes them up during program initialization. If FreePascal had
a similar table it could do the same thing as part of SetResourceStrings.
Assuming Krzysztof is correct that the compiler flattens the references,
I'm guessing replacing the FPC_RESOURCESTRINGTABLES section won't help
either. If it would, I'd be happy to look into that approach too.
If fixing this is correctly is a reasonable possibility, I'm happy to
look into it myself, but I would like to hear how attainable it's likely
to be first, since I've never worked on a compiler before.
More information about the fpc-pascal