[all-commits] [llvm/llvm-project] 20555a: [clang] P2266 implicit moves STL workaround

Matheus Izvekov via All-commits all-commits at lists.llvm.org
Mon Jul 26 13:21:48 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 20555a15a596012ef827e29b665db53a4fc0b86c
      https://github.com/llvm/llvm-project/commit/20555a15a596012ef827e29b665db53a4fc0b86c
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2021-07-26 (Mon, 26 Jul 2021)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/SemaCXX/cxx2b-p2266-disable-with-msvc-compat.cpp

  Log Message:
  -----------
  [clang] P2266 implicit moves STL workaround

This patch replaces the workaround for simpler implicit moves
implemented in D105518.

The Microsoft STL currently has some issues with P2266.

Where before, with -fms-compatibility, we would disable simpler
implicit moves globally, with this change, we disable it only
when the returned expression is in a context contained by
std namespace and is located within a system header.

Signed-off-by: Matheus Izvekov <mizvekov at gmail.com>

Reviewed By: aaron.ballman, mibintc

Differential Revision: https://reviews.llvm.org/D105951




More information about the All-commits mailing list