That is C++14 constexpr; C1XX only supports C++11 constexpr.
Sent from a touchscreen; please excuse the brevity.
On Thu, Jun 23, 2016 at 7:23 AM -0700, "Paul A. Bristow"
-----Original Message----- From: Boost [mailto:boost-bounces@lists.boost.org] On Behalf Of Beman Dawes Sent: 11 June 2016 17:06 To: Boost Developers List Subject: Re: [boost] enabling constexpr with Visual studio 2015 Update 3 (RC)
You might want to read the thread "[config] Changes needed for VC++ 2015 Update 3?" if you have not already done so.
Please file a MSVC bug report if you hit any C++11 constexpr bugs in the Update 3 RC. They giving very high priority to C++11 bugs affecting Boost code. They would like us to be able to turn BOOST_NO_CXX11_CONSTEXPR off for Update 3.
Unless I am doing something very silly using Update 3 RC, it is not possible to declare and initialization any constexpr intermediate variables within a constexpr function. constexpr int tripled(int n) { constexpr int f = 3; // C3250: 'f': declaration is not allowed in 'constexpr' function body // constexpr_variable_in_function.cpp(35) : error C3249 : illegal statement or sub - expression for 'constexpr' function return n * f; } even using /std:c++latest Reported as https://na01.safelinks.protection.outlook.com/?url=https%3a%2f%2fconnect.microsoft.com%2fVisualStudio%2ffeedback%2fdetails%2f2849367&data=01%7c01%7cbion%40microsoft.com%7cff91fe2ba4ea4628db3908d39b71f2e8%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=s%2fuVgTFXoqGoAfgDEOSv%2bgo5ZkyDQ%2b03m8B6of9icHw%3d My reading of C++17 draft is that is now an added feature, and this work with GCC 5.3.0 (not even the most recent version). Lack of this is a showstopper when trying to define any (mathy) function where it is impossible/impractical to provide a single return statement. Paul --- Paul A. Bristow Prizet Farmhouse Kendal UK LA8 8AB +44 (0) 1539 561830 _______________________________________________ Unsubscribe & other changes: https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2flists.boost.org%2fmailman%2flistinfo.cgi%2fboost&data=01%7c01%7cbion%40microsoft.com%7cff91fe2ba4ea4628db3908d39b71f2e8%7c72f988bf86f141af91ab2d7cd011db47%7c1&sdata=immCBtMvwc7pb3rBkSnywDK4BntAtJrgyEI0MjjAaHU%3d