Am Wednesday 15 August 2012 15:20:21 schrieb Lukasz Sokol: > On 15/08/2012 13:55, Rainer Stratmann wrote: > > Am Wednesday 15 August 2012 14:49:04 schrieb Rainer Stratmann: > >> I would call this function rs( s : pchar ) because it has to be short. > >> if there is a rs() in the program the compiler stores the caller adress > >> (unique handle) and the pointer to the pchar in a list. > > > > If the pointer to pchar is unique then this one information will be > > already enough. That means the parameter s must be a constant text. > > This question has long lingered in my brain just could not express it: > > What happens in your program/translator, if the strings change their > physical/relative address?
Then the mov pcharconst , EAX command also had changed. At every start of the program I see if it works here. If it works here ist works outside also. > For example if you add/remove units and rebuild. All pchar adresses are searched at programstart. > For example if FPC internals decide to add or remove some padding in front > of the constants. Very unlikely. For which reason should there be padding in front? I can not see any insolvable problem here. > Will all your translation work go to waste ? Then I would have a look at the opcodes directly and see what has been changed and likely find a solution. If the maintainers decide to build in the suggested function above then everthing is solved. By now no one of the maintainers wants this. I also can ask what happens if there are no more maintainers for fpc? _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal