summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/cxx98-compat-flags.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Provide a flag group to turn on/off all "binary literals" extension warnings.Richard Smith2017-10-181-2/+4
| | | | llvm-svn: 316056
* Fix clang's handling of the copy performed in the second phase of classRichard Smith2016-09-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | copy-initialization. We previously got this wrong in a couple of ways: - we only looked for copy / move constructors and constructor templates for this copy, and thus would fail to copy in cases where doing so should use some other constructor (but see core issue 670), - we mishandled the special case for disabling user-defined conversions that blocks infinite recursion through repeated application of a copy constructor (applying it in slightly too many cases) -- though as far as I can tell, this does not ever actually affect the result of overload resolution, and - we misapplied the special-case rules for constructors taking a parameter whose type is a (reference to) the same class type by incorrectly assuming that only happens for copy/move constructors (it also happens for constructors instantiated from templates and those inherited from base classes). These changes should only affect strange corner cases (for instance, where the copy constructor exists but has a non-const-qualified parameter type), so for the most part it only causes us to produce more 'candidate' notes, but see the test changes for other cases whose behavior is affected. llvm-svn: 280776
* Change -Wbind-to-temporary-copy from an ExtWarn to an Extension.Nico Weber2014-09-181-2/+2
| | | | | | | | | | | | | | | | | The reasoning is that this construct is accepted by all compilers and valid in C++11, so it doesn't seem like a useful warning to have enabled by default. Building with -pedantic, -Wbind-to-temporary-copy, or -Wc++98-compat still shows the warning. The motivation is that I built re2, and this was the only warning that was emitted during the build. Both changing re2 to fix the warning and detecting clang and suppressing the warning in re2's build seem inferior than just giving the compiler a good default for this warning. Also move the cxx98compat version of this warning to CXX98CompatPedantic, and update tests accordingly. llvm-svn: 218008
* PR10217: Provide diagnostics explaining why an implicitly-deleted specialRichard Smith2012-03-301-4/+2
| | | | | | member function is deleted. llvm-svn: 153773
* Extend -Wno-bind-to-temporary-copy and -Wno-{unnamed,local}-type-template-argsRichard Smith2011-11-111-0/+37
to disable the corresponding -Wc++98-compat warnings in addition to the C++11 extension warnings, so that people already using these flags can switch to C++11 mode and turn on -Wc++98-compat. llvm-svn: 144404
OpenPOWER on IntegriCloud