Windows build failure - C2131: expression did not evaluate to a constant
Stephan Bergmann
sbergman at redhat.com
Tue Dec 4 07:37:21 UTC 2018
On 04/12/2018 02:54, Luke Benes wrote:
> After commit:
> https://cgit.freedesktop.org/libreoffice/core/commit/?id=644188bf7f3a
>
> Compute (un-)premultiply_table at compile time
>
> I'm seeing the following build failure on Windows 32-bit release build:
> D:/core/vcl/source/bitmap/BitmapTools.cxx(1078): error C2131: expression did not evaluate to a constant
> D:/core/vcl/source/bitmap/BitmapTools.cxx(1097): error C2131: expression did not evaluate to a constant
> make[1]: *** [D:/core/solenv/gbuild/LinkTarget.mk:293: D:/core/workdir/CxxObject/vcl/source/bitmap/BitmapTools.o] Error 2
> make[1]: *** Waiting for unfinished jobs....
> make: *** [Makefile:283: build] Error 2
>
>
> Do I need to upgrade MSVC again?
Our recently-bumped MSVC baseline is Visual Studio 2017 version 15.7
(the "version 15.7" suffix is important, there are many different
releases of Visual Studio 2017, with ever-increasing C++ standard
compliance). That should be enforced by configure since
<https://gerrit.libreoffice.org/plugins/gitiles/core/+/206b8c4ae320d7d8614f21800d8f77fa29f8f5ff%5E!/>
"On Windows, check for at least Visual Studio 2017 version 15.7".
<https://gerrit.libreoffice.org/#/c/64428/> "Compute
(un-)premultiply_table at compile time" was checked by Jenkins' tb78 at
<https://ci.libreoffice.org/job/gerrit_windows/23400/>, and the mention
of "14.14" in e.g. "export
COMPATH=C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/14.14.26428"
(<https://ci.libreoffice.org/job/gerrit_windows/23400/consoleFull>)
makes it look like that configuration indeed uses Visual Studio 2017
version 15.7 per the mapping from "MSVC++ 14.14" to "_MSC_VER == 1914
(Visual Studio 2017 version 15.7)" documented at
<https://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B#Internal_version_numbering>.
Not sure what goes wrong for you. What version of VS are you using?
More information about the LibreOffice
mailing list