[all-commits] [llvm/llvm-project] 629170: [Sema] Lambdas are not part of immediate context f...

Ilya Biryukov via All-commits all-commits at lists.llvm.org
Tue May 9 03:10:41 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 629170fe452f4849c89fc289d6e2cf5f08534342
      https://github.com/llvm/llvm-project/commit/629170fe452f4849c89fc289d6e2cf5f08534342
  Author: Ilya Biryukov <ibiryukov at google.com>
  Date:   2023-05-09 (Tue, 09 May 2023)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/default-arguments.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/p11-1y.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/p23.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/p4.cpp
    M clang/test/CXX/stmt.stmt/stmt.select/stmt.if/p2.cpp
    A clang/test/CXX/temp/temp.deduct/p9.cpp
    M clang/test/CXX/temp/temp.param/p15-cxx0x.cpp
    M clang/test/PCH/cxx1y-init-captures.cpp
    M clang/test/SemaCXX/cxx1y-generic-lambdas-capturing.cpp
    M clang/test/SemaCXX/cxx1y-generic-lambdas.cpp
    M clang/test/SemaCXX/cxx1y-init-captures.cpp
    M clang/test/SemaCXX/cxx1z-lambda-star-this.cpp
    M clang/test/SemaCXX/cxx20-decomposition.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp
    M clang/test/SemaCXX/lambda-pack-expansion.cpp
    M clang/test/SemaCXX/lambda-unevaluated.cpp
    M clang/test/SemaCXX/vartemplate-lambda.cpp
    M clang/test/SemaCXX/warn-unused-lambda-capture.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/cxx1z-using-declaration.cpp
    M clang/test/SemaTemplate/instantiate-exception-spec-cxx11.cpp
    M clang/test/SemaTemplate/instantiate-local-class.cpp
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Sema] Lambdas are not part of immediate context for deduction

This commit implements [temp.deduct]p9.
Test updates include:
- New notes in `cxx1y-init-captures.cpp`, `lambda-expressions.cpp`
  and 'warn-unused-lambda-capture.cpp'.
  This seems to be caused by diagnosing errors earlier (during
  deduction) that were previously surfaced later (during
  instantiation).
- New error `lambda-unevaluated.cpp` is in line with [temp.deduct]p9.

Reviewed By: erichkeane, #clang-language-wg

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




More information about the All-commits mailing list