Subject: bug#19502: 24.4; Emacs 24.4 on windows: the contents of the system-configuration variable has changed, but its docstring has not. I prefer the behaviour described in the docstring.

From: Eli Zaretskii <[email-masked]>
Date: Sun, 04 Jan 2015 17:57:38 +0200

> Date: Sun, 4 Jan 2015 10:55:14 +0100
> From: Albert <[email-masked]>
> 
> Evaluating (insert system-configuration) gives
> in emacs 24.3: i386-mingw-nt6.2.9200
> in emacs 24.4: i686-pc-mingw32
> 
> The important difference here is the absence of the "nt6.2.9200" part in
> emacs 24.4. I have use cases that need to know the version of the
> windows emacs is currently running on. I would therefore prefer
> something like "i686-pc-mingw32-nt6.2.9200" if that is somehow better or
> more accurate than the original string from 24.3. Perhaps the "pc" part
> is not needed?

The native MS-Windows build of Emacs now uses the same code as on
other platforms to compute this string, so the OS version is not
included.

I fixed the doc string, thanks for pointing out the discrepancy.

> In emacs 24.4, the docstring for the variable system-configuration is:
> "system-configuration is a variable defined in `C source code'.
> Its value is "i686-pc-mingw32"
> 
> Documentation:
> Value is string indicating configuration Emacs was built for.
> On MS-Windows, the value reflects the OS flavor and version on which
> Emacs is running."
> 
> I would prefer if this docstring would remain correct.
> 
> But, while checking the contents of this entire mail, I see a version
> number of 6.3.9600 reported just a few lines below.

Exactly.  So in fact the OS version in old value was redundant, and no
information is lost with this change.

> Could it be that the windows version reported in the
> system-configuration variable of emacs 24.3 is the version under
> which that emacs was build?

No, it reported the version of the OS where Emacs was running.

> So it seems the old emacs 24.3 behaviour is not following the
> docstring either.

It will in the next release.

> Still, I would prefer it if the variable could live up to its
> current docstring, if possible.

Given that the information you want is still available, both in the
bug report and independently (see below), why would you need that
information in system-configuration as well?

> If that is not possible, is there another way of asking emacs on
> which windows version it is running?  Is it documented somewhere
> where I could find it?  The bug-reporting code obviously manages to
> do it, but when I searched for alternatives yesterday I couldn't
> find any.

You want x-server-version (a function), it is what report-emacs-bug
calls to get that info.