llvm-project/clang/lib
Bruno Cardoso Lopes 1383ddc40b [SemaObjC] Improve ObjCDictionaryLiteral and ObjCArryLiteral diagnostics
Sema actions on ObjCDictionaryLiteral and ObjCArryLiteral are currently
done as a side-effect of Sema upon parent expressions, which incurs of
delayed typo corrections for such literals to be performed by TypoTransforms
upon the ObjCDictionaryLiteral and ObjCArryLiteral themselves instead of
its elements individually.

This is specially bad because it was not designed to act on several
elements; searching through all possible combinations of corrections for
several elements is very expensive. Additionally, when one of the
elements has no correction candidate, we still explore all options and
at the end emit no typo corrections whatsoever.

Do the proper sema actions by acting on each element alone during appropriate
literal parsing time to get proper diagonistics and decent compile time
behavior.

Differential Revision: http://reviews.llvm.org/D22183

rdar://problem/21046678

llvm-svn: 276020
2016-07-19 20:21:18 +00:00
..
ARCMigrate [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
AST Fix some minor issues found by Coverity. 2016-07-18 22:37:35 +00:00
ASTMatchers [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
Analysis [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
Basic [mips] Correct label prefixes for N32 and N64. 2016-07-19 10:49:03 +00:00
CodeGen [OpenCL] Fixes bug of missing OCL version metadata on the AMDGCN target 2016-07-19 19:39:45 +00:00
Driver Add support of the latest Ubuntu (Yakkety Yak - 16.10) 2016-07-19 14:00:57 +00:00
Edit Remove autoconf support 2016-01-26 21:30:40 +00:00
Format [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
Frontend [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
FrontendTool Make it possible for AST plugins to enable themselves by default 2016-03-15 12:51:40 +00:00
Headers [X86][AVX512F] minor fix of the parameter names 2016-07-14 08:40:30 +00:00
Index [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
Lex [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
Parse [SemaObjC] Improve ObjCDictionaryLiteral and ObjCArryLiteral diagnostics 2016-07-19 20:21:18 +00:00
Rewrite Remove use of builtin comma operator. 2016-02-18 22:34:54 +00:00
Sema Deprecated (legacy) string literal conversion to 'char *' causes strange overloading resolution 2016-07-19 11:29:16 +00:00
Serialization [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
StaticAnalyzer [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
Tooling [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
CMakeLists.txt Fix build with various feature flag combinations 2014-07-14 22:17:22 +00:00