Restrict fixit for missing 'class' in template template parameters.
Based on Doug's feedback to r153887 this omits the FixIt if the following token
isn't syntactically valid for the context. (not a comma, '...', identifier,
'>', or '>>')
There's a bunch of work to handle the '>>' case, but it makes for a much more
pleasant diagnostic in this case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154163 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/FixIt/fixit-cxx0x.cpp b/test/FixIt/fixit-cxx0x.cpp
index dfc5c8c..9e1f737 100644
--- a/test/FixIt/fixit-cxx0x.cpp
+++ b/test/FixIt/fixit-cxx0x.cpp
@@ -100,3 +100,7 @@
int f = me.f(ifn, kfn);
int g = me.g(ifn, kfn);
}
+
+template<template<typename> ...Foo, // expected-error {{template template parameters require 'class' after the parameter list}}
+ template<template<template<typename>>>> // expected-error 3 {{template template parameters require 'class' after the parameter list}}
+void func();