[PATCH v4 5/8] Start adding the infrastructure for handling TypoExprs.

Kaelyn Takata rikka at google.com
Tue Aug 26 11:05:49 PDT 2014


+dblaikie


On Thu, Jul 31, 2014 at 1:20 PM, Kaelyn Takata <rikka at google.com> wrote:

>
> Part of the infrastructure is a map from a TypoExpr to the Sema-specific
> state needed to correct it, along with helpers to ease dealing with the
> state.
>
> The the typo count is propagated up the stack of
> ExpressionEvaluationContextRecords when one is popped off of to
> avoid accidentally dropping TypoExprs on the floor. For example,
> the attempted correction of g() in test/CXX/class/class.mem/p5-0x.cpp
> happens with an ExpressionEvaluationContextRecord that is popped off
> the stack prior to ActOnFinishFullExpr being called and the tree
> transform for TypoExprs being run.
> ---
>  include/clang/Sema/Sema.h           |  44 +++++
>  include/clang/Sema/SemaInternal.h   |  15 +-
>  include/clang/Sema/TypoCorrection.h |   2 +-
>  lib/Sema/SemaExpr.cpp               |   7 +
>  lib/Sema/SemaExprCXX.cpp            | 108 ++++++++++++
>  lib/Sema/SemaLookup.cpp             | 316
> ++++++++++++++++++++++++------------
>  6 files changed, 384 insertions(+), 108 deletions(-)
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140826/29266a93/attachment.html>


More information about the cfe-commits mailing list