Created attachment 24560 [details]
Mono version: 188.8.131.52 (2017-06/6b8abfeb7cc Thu Aug 17 18:17:27 EDT 2017)
The following code (also provided in the attached zip as a project) uses Single.TryParse to parse an empty string. When the machine's locale is set to Czech 'cs-CZ' the TryParse returns true. On Windows it returns false.
string culture = "cs-CZ";
Thread.CurrentThread.CurrentCulture = new CultureInfo (culture);
string text = "";
bool result = Single.TryParse (text, out number);
// result should be false but it is true for 'cs-CZ' culture.
This is coming from referencesource which assumes that no culture has empty numeric symbols (e.g. NaN)