From bd3c08e30119fe795a1b671b72fa2138bf645ebd Mon Sep 17 00:00:00 2001 From: Anastasia Stulova Date: Wed, 21 Oct 2015 10:37:57 +0000 Subject: [PATCH] [OpenCL] Add test for program scope variable restrictions in OpenCL v2.0 http://reviews.llvm.org/D13105 llvm-svn: 250892 --- clang/test/SemaOpenCL/storageclass-cl20.cl | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 clang/test/SemaOpenCL/storageclass-cl20.cl diff --git a/clang/test/SemaOpenCL/storageclass-cl20.cl b/clang/test/SemaOpenCL/storageclass-cl20.cl new file mode 100644 index 000000000000..f379d59b7fd7 --- /dev/null +++ b/clang/test/SemaOpenCL/storageclass-cl20.cl @@ -0,0 +1,15 @@ +// RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only -DCL20 -cl-std=CL2.0 + +static constant int G1 = 0; +int G2 = 0;// expected-error{{program scope variable must reside in global or constant address space}} +global int G3 = 0; +local int G4 = 0;// expected-error{{program scope variable must reside in global or constant address space}} + +void kernel foo() { + static int S1 = 5;// expected-error{{program scope variable must reside in global or constant address space}} + static global int S2 = 5; + static private int S3 = 5;// expected-error{{program scope variable must reside in global or constant address space}} + + constant int L1 = 0; + local int L2; +}