diff options
Diffstat (limited to 'test/Analysis/templates.cpp')
| -rw-r--r-- | test/Analysis/templates.cpp | 22 | 
1 files changed, 22 insertions, 0 deletions
diff --git a/test/Analysis/templates.cpp b/test/Analysis/templates.cpp index faa5c1a762094..131794a7c9319 100644 --- a/test/Analysis/templates.cpp +++ b/test/Analysis/templates.cpp @@ -48,3 +48,25 @@ void testNonTypeTemplateInstantiation() {  #endif  } +namespace rdar13954714 { +  template <bool VALUE> +  bool blockInTemplate() { +    return (^() { +      return VALUE; +    })(); +  } + +  // force instantiation +  template bool blockInTemplate<true>(); + +  template <bool VALUE> +  void blockWithStatic() { +    (void)^() { +      static int x; +      return ++x; +    }; +  } + +  // force instantiation +  template void blockWithStatic<true>(); +}  | 
