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

Enable __cpp_lib_concepts for EDG, part 1 #4296

Merged
merged 39 commits into from
Feb 1, 2024

Commits on Jan 4, 2024

  1. Configuration menu
    Copy the full SHA
    72de60e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    75fd274 View commit details
    Browse the repository at this point in the history
  3. VSO-1898880 EDGcpfe/26641 EDG fails to handle variable template speci…

    …alizations that differ only in the requires-clause
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    94b23b8 View commit details
    Browse the repository at this point in the history
  4. VSO-1898890 EDGcpfe/26576 EDG produces an error for conversion from a…

    …rray to const reference to pointer
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    ae5116f View commit details
    Browse the repository at this point in the history
  5. VSO-1898912 EDGcpfe/26535 EDG does not consider single_view<trivially…

    …_copy_assignable_type> to be trivially copy-assignable
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    22b1235 View commit details
    Browse the repository at this point in the history
  6. VSO-1898913 EDGcpfe/26534 Befriending an abbreviated function templat…

    …e makes EDG ignore subsequent members
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    d1d6942 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d27b9be View commit details
    Browse the repository at this point in the history
  8. VSO-1898929 EDGcpfe/25761 EDG rejects requires-clause in a definition…

    … within a function template
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    ee2f18b View commit details
    Browse the repository at this point in the history
  9. VSO-1898933 EDGcpfe/26745 EDG rejects parenthesized aggregate initial…

    …ization in a mem-initializer
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    0f4a9a0 View commit details
    Browse the repository at this point in the history
  10. VSO-1898937 EDGcpfe/23985 EDG's __is_convertible_to depends on whethe…

    …r the private members can be accessed in the current context
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    70ecbd1 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a269667 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    eb3f1b9 View commit details
    Browse the repository at this point in the history
  13. VSO-1898945 EDGcpfe/23985 EDG's default_initializable<AggregatesExpli…

    …citDefault> has wrong value
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    7067fd1 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    0564fb7 View commit details
    Browse the repository at this point in the history
  15. VSO-1898962 EDGcpfe/26750 EDG constexpr dynamic allocations can't han…

    …dle an array of std::string in debug mode
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    6959375 View commit details
    Browse the repository at this point in the history
  16. VSO-1900279 EDGcpfe/26763 EDG: Conditional explicit specifier is chec…

    …ked too early in constrained constructor
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    894549c View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    de175b6 View commit details
    Browse the repository at this point in the history
  18. VSO-1900290 EDGcpfe/25760 EDG thinks a member does not exist in condi…

    …tional noexcept with friendship
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    350387a View commit details
    Browse the repository at this point in the history
  19. VSO-1900293 EDGcpfe/26577 EDG rejects constrained alias template in a…

    … pack expansion, when the pack is empty
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    082225b View commit details
    Browse the repository at this point in the history
  20. VSO-1901430 EDGcpfe/26547 EDG rejects as_const_view with error: atomi…

    …c constraint depends on itself
    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    743e9fa View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    8753c4c View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    b4afb3a View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    ed64238 View commit details
    Browse the repository at this point in the history
  24. Uncomment /BE tests

    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    c2f695c View commit details
    Browse the repository at this point in the history
  25. Fix P0898R3_concepts

    cpplearner committed Jan 4, 2024
    Configuration menu
    Copy the full SHA
    32f4220 View commit details
    Browse the repository at this point in the history

Commits on Jan 5, 2024

  1. Configuration menu
    Copy the full SHA
    70c6c8e View commit details
    Browse the repository at this point in the history
  2. <ranges>: EDG mishandles a requires-clause that involves a local type…

    … alias (not yet reported)
    cpplearner committed Jan 5, 2024
    Configuration menu
    Copy the full SHA
    07c08df View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bc7e59d View commit details
    Browse the repository at this point in the history

Commits on Jan 6, 2024

  1. Configuration menu
    Copy the full SHA
    65cfb73 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9e9d1ee View commit details
    Browse the repository at this point in the history

Commits on Jan 13, 2024

  1. Configuration menu
    Copy the full SHA
    8bdc2c3 View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2024

  1. Configuration menu
    Copy the full SHA
    1ec9af8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    688025a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f12c63a View commit details
    Browse the repository at this point in the history
  4. Work around VSO-1949451 "EDG concepts rejects std::expected trying to…

    … propagate triviality of assignment operations".
    StephanTLavavej committed Jan 31, 2024
    Configuration menu
    Copy the full SHA
    a8b9271 View commit details
    Browse the repository at this point in the history

Commits on Feb 1, 2024

  1. Configuration menu
    Copy the full SHA
    6b4e30b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0409b66 View commit details
    Browse the repository at this point in the history
  3. Properly detect MSVC, part 1.

    DevCom-10265237 "Parameter pack size mismatch doesn't make the require-expression false (regression)" is an MSVC bug.
    
    This preprocessor logic is guarding an additional constraint that MSVC needs, so I'm updating the `#endif` comment to "^^^ workaround ^^^".
    
    Previously, I believe this code was mentally saying, "we're in concepts code, so we only need to distinguish Clang from MSVC". This is no longer the case. Now we need `!defined(__clang__) && !defined(__EDG__)` to prevent EDG from using a workaround that it doesn't need.
    StephanTLavavej committed Feb 1, 2024
    Configuration menu
    Copy the full SHA
    1b4673f View commit details
    Browse the repository at this point in the history
  4. Properly detect MSVC, part 2.

    DevCom-1691516 "std::vector::emplace_back does not work for a class with default initializer" is an MSVC bug.
    
    Curiously, this preprocessor logic was checking only `#ifdef __EDG__` to distinguish it from MSVC. (I think it might have been written before Clang supported construct_at()?)
    
    Instead, we need to check `#if defined(__clang__) || defined(__EDG__)` and send them to the "no workaround" case. This prevents Clang from using a workaround that it doesn't need.
    StephanTLavavej committed Feb 1, 2024
    Configuration menu
    Copy the full SHA
    5850a46 View commit details
    Browse the repository at this point in the history