[Lldb-commits] [PATCH] D54843: [Expr] Check the language before ignoring Objective C keywords

Jim Ingham via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Dec 3 18:52:01 PST 2018

jingham accepted this revision.
jingham added a comment.

I think the ideal behavior would be "if we don't have debug info for the frame, choose ObjC++".  But if you are in frame with debug info, obey that frame's language (except that we have to use C++ because the expression parser uses C++ references to play some of the games it plays.)  The reasoning behind that is because in the first case, you won' have local names and are calling out to global objects and having the widest language available is the most convenient.  If we did it that way,  we could also make the user's choice of language always hold (except again you can't use "class" anywhere because of the use of C++...).

But I don't see an easy way to implement that behavior.  You'd have to plumb through another bit - has debug info - which is orthogonal to the language, but have that affect the language choice.

However, this change is strictly better for non-objc programs, and preserves the same behavior as currently holds when there is ObjC.  So I think this change is fine for now.



More information about the lldb-commits mailing list