llvm-project/clang/lib
Richard Trieu 01fc001062 Changes to the name lookup have caused a regression in the digraph fix-it hint.
For instance:

template <class T> void E() {};
class F {};

void test() {
 ::E<::F>();
 E<::F>();
}

Gives the following error messages:

error: found '<::' after a template name which forms the
     digraph '<:' (aka '[') and a ':', did you mean '< ::'?
 ::E<::F>();
    ^~~
    < ::
error: expected expression
 E<::F>();
    ^
error: expected ']'
note: to match this '['
 E<::F>();

This patch adds the digraph fix-it check right before the name lookup,
moves the shared checking code to a new function, and adds new
tests to catch future regressions.

llvm-svn: 140039
2011-09-19 19:01:00 +00:00
..
ARCMigrate [arcmt] Use __bridge_retained when passing an objc object to a CF parameter 2011-09-14 18:17:09 +00:00
AST Fix a QoI bug with overloaded operators inside macros. 2011-09-19 18:51:20 +00:00
Analysis Fix massive LiveVariables regression (due to LiveVariables rewrite) by addressing two performance problems: 2011-09-16 23:01:39 +00:00
Basic Rename LangOptions::Microsoft to LangOptions::MicrosoftExt to make it clear that this flag must be used only for Microsoft extensions and not emulation; to avoid confusion with the new LangOptions::MicrosoftMode flag. 2011-09-17 17:15:52 +00:00
CodeGen Tighten check to match an ivar with corresponding property by using ObjCImplementationDecl. 2011-09-19 18:54:16 +00:00
Driver As per discussion with Doug Gregor on the IRC channel, introduce a new compiler switch: -fms-compatility. 2011-09-17 04:32:15 +00:00
Frontend Do not use builtin includes if -fms-compatibility is specified. Some MSVC header files have the same name as clang's builtins, this creates clash. 2011-09-19 05:15:54 +00:00
FrontendTool Eliminate the unused -create-module cc1-level option 2011-09-15 19:45:56 +00:00
Headers Tweak *mmintrin.h so that they don't make any bad assumptions about alignment (which probably has little effect in practice, but better to get it right). Make the load in _mm_loadh_pi and _mm_loadl_pi a single LLVM IR instruction to make optimizing easier for CodeGen. 2011-09-15 23:15:27 +00:00
Index remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports 2011-07-23 10:55:15 +00:00
Lex Rename LangOptions::Microsoft to LangOptions::MicrosoftExt to make it clear that this flag must be used only for Microsoft extensions and not emulation; to avoid confusion with the new LangOptions::MicrosoftMode flag. 2011-09-17 17:15:52 +00:00
Parse Changes to the name lookup have caused a regression in the digraph fix-it hint. 2011-09-19 19:01:00 +00:00
Rewrite Rename LangOptions::Microsoft to LangOptions::MicrosoftExt to make it clear that this flag must be used only for Microsoft extensions and not emulation; to avoid confusion with the new LangOptions::MicrosoftMode flag. 2011-09-17 17:15:52 +00:00
Sema objc - some refactoring of my last 'self' patch. 2011-09-19 18:06:07 +00:00
Serialization With modules, we can end up loading a new module after we've seen an 2011-09-17 00:05:03 +00:00
StaticAnalyzer [analyzer] Refactor: make PathDiagnosticLocation responsible for validation of SourceLocations (commit 5 of ?): 2011-09-16 19:18:30 +00:00
CMakeLists.txt The ARC Migration Tool. All the credit goes to Argyrios and Fariborz 2011-06-15 23:25:17 +00:00
Makefile The ARC Migration Tool. All the credit goes to Argyrios and Fariborz 2011-06-15 23:25:17 +00:00