2409. [fund.ts] SFINAE-friendly common_type/iterator_traits should be removed from the fundamental-ts

Section: 3.3.2 [fund.ts::meta.trans.other], 99 [fund.ts::iterator.traits] Status: TS Submitter: Daniel Krügler Opened: 2014-06-19 Last modified: 2017-07-30

Priority: Not Prioritized

View all other issues in [fund.ts::meta.trans.other].

View all issues with TS status.

Discussion:

Addresses: fund.ts

During the Rapperswil meeting the proposal N4041 had been discussed and there seemed to be strong consensus to apply the SFINAE-friendly definitions that currently exist within the fundamentals-ts to the C++17 working draft. If this happens, the fundamentals-ts needs to remove its own specification regarding these templates. This issue requests this change to happen.

[2013-06-21 Rapperswil]

Accept for Fundamentals TS Working Paper

Proposed resolution:

This wording is relative to N4023 in regard to fundamental-ts changes.

  1. In fundamental-ts, change Table 2 — "Significant features in this technical specification" as indicated:

    Table 2 — Significant features in this technical specification
    Doc.
    No.
    Title Primary
    Section
    Macro Name Suffix Value Header
    N3843
    A SFINAE-
    Friendly
    common_type
    2.4 [mods.meta.trans.other]
    common_type_sfinae 201402 <type_traits>
    N3843
    A SFINAE-
    Friendly
    iterator_traits
    2.5 [mods.iterator.traits]
    iterator_traits_sfinae 201402 <iterator>
  2. In fundamental-ts, remove the existing sub-clause 2.4 [mods.meta.trans.other] in its entirety:

    2.4 Changes to std::common_type [mods.meta.trans.other]

    -1- […]

  3. In fundamental-ts, remove the existing sub-clause 2.5 [mods.iterator.traits] in its entirety:

    2.5 Changes to std::iterator_traits [mods.iterator.traits]

    -1- […]