summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/instantiate-function-params.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-05-04 18:18:31 +0000
committerDouglas Gregor <dgregor@apple.com>2010-05-04 18:18:31 +0000
commitc8be95274d615a6ca3d4b717267100531ff84ed2 (patch)
tree16207c834f17e11f4a46d55c7a35958bc7102140 /clang/test/SemaTemplate/instantiate-function-params.cpp
parenta25ee78fc0afc78dd363037daef4245f92e23218 (diff)
downloadbcm5719-llvm-c8be95274d615a6ca3d4b717267100531ff84ed2.tar.gz
bcm5719-llvm-c8be95274d615a6ca3d4b717267100531ff84ed2.zip
When instantiating a function that was declared via a typedef, e.g.,
typedef int functype(int, int); functype func; also instantiate the synthesized function parameters for the resulting function declaration. With this change, Boost.Wave builds and passes all of its regression tests. llvm-svn: 103025
Diffstat (limited to 'clang/test/SemaTemplate/instantiate-function-params.cpp')
-rw-r--r--clang/test/SemaTemplate/instantiate-function-params.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/SemaTemplate/instantiate-function-params.cpp b/clang/test/SemaTemplate/instantiate-function-params.cpp
index 45de3425d2a..54847e41908 100644
--- a/clang/test/SemaTemplate/instantiate-function-params.cpp
+++ b/clang/test/SemaTemplate/instantiate-function-params.cpp
@@ -76,3 +76,15 @@ namespace PR6990 {
{
};
}
+
+namespace InstantiateFunctionTypedef {
+ template<typename T>
+ struct X {
+ typedef int functype(int, int);
+ functype func;
+ };
+
+ void f(X<int> x) {
+ (void)x.func(1, 2);
+ }
+}
OpenPOWER on IntegriCloud