Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apply Post-Toronto edits #455

Closed
74 tasks done
CaseyCarter opened this issue Jul 18, 2017 · 3 comments
Closed
74 tasks done

Apply Post-Toronto edits #455

CaseyCarter opened this issue Jul 18, 2017 · 3 comments

Comments

@CaseyCarter
Copy link
Collaborator

CaseyCarter commented Jul 18, 2017

P0663 "Ranges TS 'Ready' Issues for Toronto"

  • 155: Comparison concepts and reference types; depends on: ConvertibleTo should require both implicit and explicit conversion #167.
  • 172: tagged<Base...> should be implicitly constructible from Base
  • 203: Don’t slurp entities from std into std::experimental::ranges::v1
  • 232: Kill the Readability requirement for i++ for InputIterators
  • 235: Trivial example breaks common_type from P0022
  • 245: The iterator adaptors should customize iter_move and iter_swap
  • 251: algorithms incorrectly specified in terms of swap(*a,*b) instead iter_swap(a,b), and move(*a) instead of iter_move(a)
  • 259: is_swappable type traits should not be in namespace std
  • 286: Resolve inconsistency in indirect_result_of
  • 288: “regular function” != RegularInvocable
  • 299: value_type of classes with member element_type
  • 302: insert_iterator and ostreambuf_iterator don’t properly support *o++ = t;
  • 307: Incomplete edit to InputIterator to support proxy iterators
  • 309: Missing “Returns:” clause of sort/stable_sort/partial_sort/nth_element
  • 311: Common and CommonReference should use ConvertibleTo to test for implicit convertibility
  • 316: copy_if “Returns” clause incorrect
  • 317: is_nothrow_indirectly_movable could be true even when iter_move is noexcept(false)
  • 318: common_iterator::operator-> does not specify its return type
  • 321: Concepts that use type traits are inadvertently subsuming them; depends on: DerivedFrom should be publicly and unambiguously  #255, ConvertibleTo should require both implicit and explicit conversion #167.
  • 330: Argument deduction constraints are specified incorrectly; depends on P0547, Comparison concepts and reference types #155
  • 331: Reorder requirements in concept Iterator
  • 345: US 2 (006): 2.1.1: Update ranged-for-loop wording
  • 354: JP 1 (015): 6.9.2.2/1: Range doesn’t require begin
  • 357: JP 3 (018): 7.4.4/5: transform does not include projection calls in Complexity

P0740 "Ranges TS 'Immediate' Issues from Toronto"

  • 61: Review stated complexities of algorithms wrt the use of projections
  • 70: Why do neither reference types nor array types satisfy Destructible?
  • 154: Raw pointer does not satisfy the requirements of RandomAccessIterator
  • 156: Validity of references obtained from out-of-lifetime iterators
  • 167: ConvertibleTo should require both implicit and explicit conversion; also fixes ConvertibleTo<T&&, U> should say something about the final state of the source object #314
  • 170: unique_copy and LWG 2439
  • 174: Swappable concept and P0185 swappable traits
  • 176: Relax requirements on replace and replace_if
  • 211: Add new header <experimental/range/range>
  • 229: Assignable concept looks wrong
  • 250: Do common_iterator’s copy/move ctors/operators need to be specified?
  • 255: DerivedFrom should be “publicly and unambiguously”
  • 256: Add constexpr to advance, distance, next, and prev
  • 261: Restrict alg.general changes from P0370 to apply only to the range-and-a-half algorithms
  • 262: Use expression-equivalent in definitions of CPOs
  • 284: iter_move and iter_swap need to say when they are noexcept and constexpr
  • 289: [iterator, count) ranges
  • 298: common_iterator::operator-> with xvalue operator*
  • 300: Is it intended that an aggregate with a deleted or nonexistent default constructor satisfy DefaultConstructible?
  • 301: Is it intended that Constructible<int&, long&>() is true?
  • 310: Movable<int&&>() is true and it should probably be false
  • 313: MoveConstructible() != std::is_move_constructible()
  • 314: ConvertibleTo<T&&, U> should say something about the final state of the source object [fixed by ConvertibleTo should require both implicit and explicit conversion #167]
  • 322: ranges::exchange should be constexpr and conditionally noexcept
  • 338: common_reference doesn’t work with some proxy references
  • 339: After P0547R0, const-qualified iterator types are not Readable or Writable
  • 340: GB 1 (001): Consider all outstanding issues before the final TS is produced
  • 361: P0541 is missing semantics for OutputIterator’s writable post-increment result
  • 366: common_iterator::operator-> is underconstrained
  • 367: advance, distance, next, and prev should be customization point objects
  • 368: common_iterator’s and counted_iterator’s const operator* need to be constrained
  • 379: Switch to variable concepts
  • 381: Readable types with prvalue reference types erroneously model Writable
  • 382: Don’t try to forbid overloaded & in Destructible
  • 386: P0541: basic exception guarantee in counted_iterator’s postincrement
  • 387: Writable should work with rvalues
  • 396: SizedRange should not require size() to be callable on a const qualified object
  • 398: Assignable semantic constraints contradict each other for self-assign
  • 399: iterators that return move-only types by value do not satisfy Readable
  • 404: Normative content in informative subclause
  • 407: istreambuf_iterator::operator->
  • 411: find_first_of and mismatch should use IndirectRelation instead of Indirect(Binary)Predicate
  • 414: Remove is_[nothrow]indirectly(movable|swappable); depends on: 284
  • 420: Harmonize common_type with C++17’s [meta.trans.other]/p4
  • 421: With common_type, the Ranges TS requires vendors to break conformance
  • 424: Constrain return types in IndirectInvocable
  • 436: common_iterator’s destructor should not be specified in [common.iter.op=]

Other

  • Fixup line wrapping throughout. Especially check Assignable and Destructible.
  • Do a complete pass looking for () that managed to sneak in after applying P0651.
  • Determine "fancy" cover page requirements for the final TS document
@CaseyCarter
Copy link
Collaborator Author

Marking #174 complete, despite that there are now no changes to make. I think the PR was incorporated into P0547R2 and we failed to record that fact.

@CaseyCarter
Copy link
Collaborator Author

Ditto marking #298 complete; it seems to have been fixed somewhere along the way.

@CaseyCarter
Copy link
Collaborator Author

..and #361, which I think was pulled into P0541.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant