Thanks for all the info. Just a couple of comments.
Nan is a valid state for a double variable, and if it is detectable than I do not see why it should not be assignable. I have a fairly complicated set of routines for evaluating the performance (meaning a vector/record of several different measurements) of systems which are similar but with important differences, such that some measurements are not relevant for some system variants. So it is useful to set the vector of measurements to Nan at the start of each evaluation routine, so that a calling routine can detect that some particular measurement value has not been calculated (either because it is not relevant, in which case the calling routine has a bug by trying to use it, or because the evaluation routine has a bug in that it is not providing a result that it should do.
I am here using Nan to mean "undefined" rather than "numerically invalid".
I get the fact that compatibility with Delphi is important, but would it be sensible/possible to have an alternative to "const", say "constfix" to declare a record that really is constant, not just an initialised variable as in Delphi, and it could then be possible to write
constfix FixRec:TMyRec=(A:0;B:Nan,....
...
var LclRec:TMyRec=FixRec;
A related question is that I can write
var X:double=123;
var Y:double=123;
but not
var X,Y:double=123;
The last statement seems to me completely unambiguous, and would be usefully more concise.