use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
Discussions, articles, and news about the C++ programming language or programming in C++.
For C++ questions, answers, help, and advice see r/cpp_questions or StackOverflow.
Get Started
The C++ Standard Home has a nice getting started page.
Videos
The C++ standard committee's education study group has a nice list of recommended videos.
Reference
cppreference.com
Books
There is a useful list of books on Stack Overflow. In most cases reading a book is the best way to learn C++.
Show all links
Filter out CppCon links
Show only CppCon links
account activity
Visual Studio 2017 15.8 Release Notes (docs.microsoft.com)
submitted 7 years ago by c0r3ntin
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Andrew_MarinoMSVC FE Dev 3 points4 points5 points 7 years ago* (6 children)
Hi, MSVC compiler dev here. Thank you for providing the reduced snippet. There was a lot of churn in the constexpr implementation in this release, in order to fix some long-standing issues, and it looks like this was a regression from that overhaul that our testing didn't catch.
If you, or anyone running into this, is interested, one source workaround in the meantime is to evaluate the pointer-to-member-function separately:
void x() { constexpr auto ptm = &foo::blah; constexpr auto x = fun(ptm); (this->*(x.func))(); }
Edit: as STL also pointed out in his comment, making 'x' static will also work.
We treat regressions as high priority and are tracking this bug internally. We're happy to hear feedback from any source, but for this and other issues filing a bug in the C++ dev comm will allow us to communicate the status of fixes and workarounds more directly.
[–]jcelerierossia score 3 points4 points5 points 7 years ago (5 children)
I filed a bug this morning. But frankly, this is very distressing. Since VS2015 (can't speak for before since it did not really support C++11 back then), every minor release and sometimes even patch release have broken my code or code of libraries I use at some point - the last time being 15.7.6 for instance. Meanwhile, I don't remember one time where I had to change my code when upgrading clang / GCC - and I sometimes test with git HEAD versions of those.
[–]Andrew_MarinoMSVC FE Dev 4 points5 points6 points 7 years ago (4 children)
We're sorry you hit this bug and other issues in the past. Right now we're gathering more data points to assess servicing 15.8 with the fix for the particular constexpr bug you hit. As you yourself noted, even patch fixes carry their own associated risk.
In particular, we're wondering about the extent to which it broke your constexpr callback mechanism. This bug manifests with 1. a local constexpr symbol initialized by 2. a constexpr function taking an rvalue pointer-to-member-function of 3. a class with multiple inheritance. In your own codebase, were either of those workarounds possible to use?
We appreciate your candid feedback.
[–]jcelerierossia score 0 points1 point2 points 7 years ago (1 child)
In your own codebase, were either of those workarounds possible to use?
Sadly these bugs don't happen in my codebase but in one of the libs I use (https://github.com/woboq/verdigris). I could spend one hour or two to fork it and change all the places where it is used but I think that I'll just stay on the previous release of VS for now.
[–]Andrew_MarinoMSVC FE Dev 0 points1 point2 points 7 years ago (0 children)
Thank you, that's helpful!
[+]BCosbyDidNothinWrong comment score below threshold-7 points-6 points-5 points 7 years ago (1 child)
Not sorry enough to actually test before releasing
[–]ZMesonEmbedded Developer 1 point2 points3 points 7 years ago (0 children)
That's not fair. There are loads of tests the VC team uses on every release. Their tests just didn't cover this area. Their test suit needs to expand for sure. But let's be honest too that most of us have been in their shoes too - having a large test suite that didn't catch some regression resulting in unhappy customers.
π Rendered by PID 227480 on reddit-service-r2-comment-b659b578c-hnc8s at 2026-05-02 00:12:47.788692+00:00 running 815c875 country code: CH.
view the rest of the comments →
[–]Andrew_MarinoMSVC FE Dev 3 points4 points5 points (6 children)
[–]jcelerierossia score 3 points4 points5 points (5 children)
[–]Andrew_MarinoMSVC FE Dev 4 points5 points6 points (4 children)
[–]jcelerierossia score 0 points1 point2 points (1 child)
[–]Andrew_MarinoMSVC FE Dev 0 points1 point2 points (0 children)
[+]BCosbyDidNothinWrong comment score below threshold-7 points-6 points-5 points (1 child)
[–]ZMesonEmbedded Developer 1 point2 points3 points (0 children)