mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-25 22:38:56 -04:00

Support queue_t and clk_event_t comparisons in C++ for OpenCL mode, to preserve backwards compatibility with OpenCL C. Differential Revision: https://reviews.llvm.org/D62208 llvm-svn: 361467
27 lines
705 B
Common Lisp
27 lines
705 B
Common Lisp
// RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only -cl-std=CL2.0
|
|
// RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only -cl-std=c++
|
|
|
|
// Taken from opencl-c.h
|
|
#define CLK_NULL_EVENT (__builtin_astype(((void*)(__SIZE_MAX__)), clk_event_t))
|
|
|
|
global clk_event_t ce; // expected-error {{the '__global clk_event_t' type cannot be used to declare a program scope variable}}
|
|
|
|
int clk_event_tests() {
|
|
event_t e;
|
|
clk_event_t ce1;
|
|
clk_event_t ce2;
|
|
|
|
if (e == ce1) { // expected-error {{invalid operands to binary expression ('event_t' and 'clk_event_t')}}
|
|
return 9;
|
|
}
|
|
|
|
if (ce1 != ce2) {
|
|
return 1;
|
|
}
|
|
else if (ce1 == CLK_NULL_EVENT || ce2 != CLK_NULL_EVENT) {
|
|
return 0;
|
|
}
|
|
|
|
return 2;
|
|
}
|