aboutsummaryrefslogtreecommitdiff
path: root/clang/test/SemaCXX/amdgpu-image-rsrc.cpp
blob: 61a82d47cf1c0fe2f7c61015dd02a1bae945e073 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --version 5
// REQUIRES: amdgpu-registered-target
// RUN: %clang_cc1 -fsyntax-only -verify -std=gnu++11 -triple amdgcn -Wno-unused-value %s

void foo() {
  int n = 100;
  __amdgpu_texture_t v = 0;           // expected-error {{cannot initialize a variable of type '__amdgpu_texture_t' with an rvalue of type 'int'}}
  static_cast<__amdgpu_texture_t>(n);  // expected-error {{static_cast from 'int' to '__amdgpu_texture_t' is not allowed}}
  reinterpret_cast<__amdgpu_texture_t>(n); // expected-error {{reinterpret_cast from 'int' to '__amdgpu_texture_t' is not allowed}}
  (void)(v + v); // expected-error {{invalid operands to binary expression ('__amdgpu_texture_t' and '__amdgpu_texture_t')}}
  int x(v);      // expected-error {{cannot initialize a variable of type 'int' with an lvalue of type '__amdgpu_texture_t'}}
  __amdgpu_texture_t k;
}

template<class T> void bar(T);
void use(__amdgpu_texture_t r) { bar(r); }
struct S { __amdgpu_texture_t r; int a; };