summaryrefslogtreecommitdiffstats
path: root/clang/www/make_cxx_dr_status
Commit message (Collapse)AuthorAgeFilesLines
* CWG2352: Allow qualification conversions during reference binding.Richard Smith2020-01-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | The language wording change forgot to update overload resolution to rank implicit conversion sequences based on qualification conversions in reference bindings. The anticipated resolution for that oversight is implemented here -- we order candidates based on qualification conversion, not only on top-level cv-qualifiers, including ranking reference bindings against non-reference bindings if they differ in non-top-level qualification conversions. For OpenCL/C++, this allows reference binding between pointers with differing (nested) address spaces. This makes the behavior of reference binding consistent with that of implicit pointer conversions, as is the purpose of this change, but that pre-existing behavior for pointer conversions is itself probably not correct. In any case, it's now consistently the same behavior and implemented in only one place. This reinstates commit de21704ba96fa80d3e9402f12c6505917a3885f4, reverted in commit d8018233d1ea4234de68d5b4593abd773db79484, with workarounds for some overload resolution ordering problems introduced by CWG2352.
* Revert "CWG2352: Allow qualification conversions during reference binding."David Blaikie2019-12-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit de21704ba96fa80d3e9402f12c6505917a3885f4. Regressed/causes this to error due to ambiguity: void f(const int * const &); void f(int *); int main() { int * x; f(x); } (in case it's important - the original case where this turned up was a member function overload in a class template with, essentially: f(const T1&) f(T2*) (where T1 == X const *, T2 == X)) It's not super clear to me if this ^ is expected behavior, in which case I'm sorry about the revert & happy to look into ways to fix the original code.
* CWG2352: Allow qualification conversions during reference binding.Richard Smith2019-12-191-2/+2
| | | | | | | | | | | | | | | The language wording change forgot to update overload resolution to rank implicit conversion sequences based on qualification conversions in reference bindings. The anticipated resolution for that oversight is implemented here -- we order candidates based on qualification conversion, not only on top-level cv-qualifiers. For OpenCL/C++, this allows reference binding between pointers with differing (nested) address spaces. This makes the behavior of reference binding consistent with that of implicit pointer conversions, as is the purpose of this change, but that pre-existing behavior for pointer conversions is itself probably not correct. In any case, it's now consistently the same behavior and implemented in only one place.
* [www] Turn 'Clang 9' boxes green in C++ status pages now Clang 9 isRichard Smith2019-09-201-3/+0
| | | | | | released. llvm-svn: 372415
* [www] Mark items complete in Clang 9 as 'Clang 9' rather than 'SVN'.Richard Smith2019-09-031-1/+4
| | | | | | Don't turn the boxes green yet, since Clang 9 hasn't been released. llvm-svn: 370795
* [cxx_dr_status] Update links to use wg21.link, and list "extension"Richard Smith2019-05-091-4/+8
| | | | | | issues as "extension" rather than "not resolved". llvm-svn: 360309
* P1286R2: Remove restriction that the exception specification of aRichard Smith2019-05-061-1/+1
| | | | | | defaulted special member matches the implicit exception specification. llvm-svn: 360011
* [www] Change 'Clang 7' items from yellow to green now Clang 7 isRichard Smith2018-09-241-3/+0
| | | | | | released. llvm-svn: 342927
* [www] Update cxx_status and cxx_dr_status now that Clang 7 has branched.Richard Smith2018-08-041-1/+4
| | | | llvm-svn: 338942
* DR1672, DR1813, DR1881, DR2120: Implement recent fixes to "standardRichard Smith2018-04-051-0/+3
| | | | | | | | | | | | | | | | | layout" rules. The new rules say that a standard-layout struct has its first non-static data member and all base classes at offset 0, and consider a class to not be standard-layout if that would result in multiple subobjects of a single type having the same address. We track "is C++11 standard-layout class" separately from "is standard-layout class" so that the ABIs that need this information can still use it. Differential Revision: https://reviews.llvm.org/D45176 llvm-svn: 329332
* Update DR script to mark Clang 6 as 'done' not 'svn'.Richard Smith2018-03-141-3/+0
| | | | llvm-svn: 327546
* Update cxx_status to mark "SVN" items as "Clang 6" instead.Richard Smith2018-02-281-1/+4
| | | | llvm-svn: 326298
* [cxx_status] Change "Clang 5" items from yellow to green now that Clang 5 ↵Richard Smith2017-09-091-3/+0
| | | | | | has been released. llvm-svn: 312850
* PR33850: Update cxx_dr_status for Clang 5 branch.Richard Smith2017-08-111-3/+3
| | | | llvm-svn: 310692
* Update C++ status pages for Clang 4 branch:Richard Smith2017-01-131-2/+5
| | | | | | | | | | | | * Update version number in DR tests from 4.0 to 4 * Teach make_cxx_dr_status script about version numbers that don't contain a period. * Update cxx_status.html and cxx_dr_status.html to list Clang 4 features as "Clang 4" rather than "SVN" Clang 4 features are still listed in yellow rather than green until release. llvm-svn: 291871
* Add tests for a couple more DRs.Richard Smith2016-12-091-0/+3
| | | | llvm-svn: 289258
* [c++1z] P0012R1: Implement a few remaining pieces: downgrade diagnostic forRichard Smith2016-10-221-1/+7
| | | | | | | | | | | | | | mismatched dynamic exception specifications in expressions from an error to a warning, since this is no longer ill-formed in C++1z. Allow reference binding of a reference-to-non-noexcept function to a noexcept function lvalue. As defect resolutions, also allow a conditional between noexcept and non-noexcept function lvalues to produce a non-noexcept function lvalue (rather than decaying to a function pointer), and allow function template argument deduction to deduce a reference to non-noexcept function when binding to a noexcept function type. llvm-svn: 284905
* Update cxx_dr_Status after 3.9 branchHans Wennborg2016-07-271-2/+2
| | | | llvm-svn: 276887
* Update make_cxx_dr_status after the 3.8 branch.Richard Smith2016-01-131-2/+2
| | | | llvm-svn: 257695
* Update cxx_dr_status.html after 3.7 branchHans Wennborg2015-07-141-2/+2
| | | | llvm-svn: 242244
* Update cxx_dr_status.html after 3.6 branchHans Wennborg2015-01-141-2/+2
| | | | llvm-svn: 226008
* Update DR status list to reflect that Clang 3.5 has been released.Richard Smith2014-09-111-2/+2
| | | | llvm-svn: 217608
* DR status page: add link targets for individual DRs, and link duplicates.Richard Smith2014-03-051-6/+5
| | | | llvm-svn: 203022
* Update C++ DR page now 3.4 has been released.Richard Smith2014-02-031-4/+1
| | | | llvm-svn: 200674
* Mark auto-generated file as auto-generated, as suggested by Alp.Richard Smith2013-12-051-0/+1
| | | | llvm-svn: 196534
* Implement DR482: namespace members can be redeclared with a qualified nameRichard Smith2013-12-051-1/+4
| | | | | | | | | | within their namespace, and such a redeclaration isn't required to be a definition any more. Update DR status page to say Clang 3.4 instead of SVN and add new Clang 3.5 category (but keep Clang 3.4 yellow for now). llvm-svn: 196481
* Tests for core issue 241-250.Richard Smith2013-11-171-1/+5
| | | | llvm-svn: 194951
* Tests for core issue 216-223.Richard Smith2013-11-151-0/+6
| | | | llvm-svn: 194795
* Tests and status for DR51-99.Richard Smith2013-05-261-2/+8
| | | | llvm-svn: 182720
* Tests and status for core issues 1-50.Richard Smith2013-05-191-7/+27
| | | | llvm-svn: 182207
* Start a page tracking which C++ defect reports have been implemented in Clang.Richard Smith2013-05-161-0/+136
The page is generated from a text file listing DR numbers and implementation status, plus a copy of the cwg_index.html from the WG21 website. Recipe: $ wget http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_index.html $ ./make_cxx_dr_status >! cxx_dr_status.html The intent here is to go through all the DRs, add tests for each one, then mark them as done once such tests are committed and passing. I've not linked to this page from anywhere, since it doesn't contain any useful information yet. llvm-svn: 181967
OpenPOWER on IntegriCloud