attribute-test-3.c

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 56 行

C
56
字号
// { dg-do run }#define vector __attribute__((vector_size(16)))extern "C" void abort();class Star{  public:        inline vector float foo() const;	Star() 	  {	    data.f[0] = 1.0; data.f[1] = 2.0; data.f[2] = 3.0, data.f[3] = 4.0;	  }  private:         union {              float f[4];              vector float v;         } data;	friend vector float fTest(const Star &);};vector float Star::foo() const  // { dg-warning "vector returned by ref" "" { target { powerpc*-*-linux* && ilp32 } } }{    return data.v;}vector float fTest(const Star & val){    vector float vf = val.foo();    return vf;}int main() {  Star s;  union u {              float f[4];              vector float v;  } data;  data.v = fTest(s);  for (int i=0 ; i < 4; i++)     if (data.f[i] != (float)(i+1))       abort();  return 0;}  

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?