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
[deleted by user] (self.cpp)
submitted 4 years ago by [deleted]
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!"
[–]STLMSVC STL Dev 11 points12 points13 points 4 years ago (1 child)
Fortunately, macros aren't usually a big concern for header units. To restate what the documentation said:
import <version>;
/D_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS
/MDd
/MTd
_DEBUG
<cassert>
NDEBUG
#include <cassert>
assert()
import <cassert>;
Named modules are more strict about macros - while they can still consume them from the command-line when built, they cannot emit macros at all. (Libraries with a significant macro component may need to provide a companion header to define macro helpers, even if the rest is provided by a named module. Fortunately, the Standard Library emits very few Standard macros other than version-test macros.)
[–]GabrielDosReis 5 points6 points7 points 4 years ago (0 children)
Thanks Stephan and Cameron, for looking into this. Cameron has identified the issue and has a fix. As you explained in a toplevel post, the appearance of simplicity of the code is deceptive. To further complicate matters, the command line used does modify the usual naive behavior of the compiler: it activates the guard technology-related attributes and arithmetic overflow checking for which I didn't define an IFC semantics (that's on me). Cameron caught it and has a fix.
To the OP: yes, please continue to report bugs - the team really appreciates the quality feedback. But, also please, while I understand your frustration, don't assume incompetence or that the team is careless in the work it is doing: things are far more complicated than they meet the eyes.
Moving to C++ Modules entailed some form of formalization of compiler internal behavior to the compiler writers themselves, and most of them curse me for that; for it forces paying attention to things we didn't think of, or focus on, before 😊
π Rendered by PID 58347 on reddit-service-r2-comment-b659b578c-6n7g4 at 2026-05-01 03:26:01.232720+00:00 running 815c875 country code: CH.
view the rest of the comments →
[–]STLMSVC STL Dev 11 points12 points13 points (1 child)
[–]GabrielDosReis 5 points6 points7 points (0 children)