According to FPC's documentation of units, "the initialization parts of the units are executed in the order that the compiler loaded the units when compiling a program". But what determines this order? Is it the order, in which the units are listed in the units section of the main program (or the .lpr file, if Lazarus is used)?
In the Lazarus IDE, the units are also listed in the XML-encoded .lps file. Is it also used for determining the order of the initialization section? And, if so, what takes precedence, the units section in the .lpr file or the order in the .lps file?