[all-commits] [llvm/llvm-project] 96d814: [lldb] Remove ClangExpressionDeclMap::ResolveUnkno...

Raphael Isemann via All-commits all-commits at lists.llvm.org
Tue Nov 19 03:44:59 PST 2019


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 96d814a5fe0a333bc53f52e8f290d1ac009c85fe
      https://github.com/llvm/llvm-project/commit/96d814a5fe0a333bc53f52e8f290d1ac009c85fe
  Author: Raphael Isemann <teemperor at gmail.com>
  Date:   2019-11-19 (Tue, 19 Nov 2019)

  Changed paths:
    M lldb/include/lldb/Expression/ExpressionVariable.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp

  Log Message:
  -----------
  [lldb] Remove ClangExpressionDeclMap::ResolveUnknownTypes

Summary:
This is some really shady code. It's supposed to kick in after an expression already failed and then try to look
up "unknown types" that for some undocumented reason can't be resolved during/before parsing. Beside the
fact that we never mark any type as `EVUnknownType` in either swift-lldb or lldb (which means this code is unreachable),
this code doesn't even make the expression evaluation succeed if if would ever be executed but instead seems
to try to load more debug info that maybe any following expression evaluations might succeed.

This patch removes ClangExpressionDeclMap::ResolveUnknownTypes and the related data structures/checks/calls.

Reviewers: davide

Reviewed By: davide

Subscribers: aprantl, abidh, JDevlieghere, lldb-commits

Tags: #lldb

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




More information about the All-commits mailing list