1 // RUN: %clang_cc1 -fblocks -emit-llvm -o - %s
3 template <typename T
> T
foo(T t
)
17 template <typename T
, typename T1
> void foo(T t
, T1 r
)
20 __block T1 byref_block_arg
;
22 T1 (^block
)(char, T
, T1
, double) =
23 ^ T1 (char ch
, T arg
, T1 arg2
, double d1
) { byref_block_arg
= arg2
;
24 return byref_block_arg
+ block_arg
+ arg
; };
26 void (^block2
)() = ^{};
34 namespace rdar6182276
{
36 int printf(const char *, ...);
39 template <typename T
> T
foo(T t
)
41 void (^testing
)(int) = ^(int bar
) { printf("bar is %d\n", bar
); };
46 template <typename T
> void gorf(T t
)