declspec-4.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 44 行

C
44
字号
/* Test declaration specifiers.  Test empty declarations.  Test with   no special options.  *//* Origin: Joseph Myers <jsm@polyomino.org.uk> *//* { dg-do compile } *//* { dg-options "" } *//* If a declaration does not declare a declarator, it must declare a   tag or the members of an enumeration, and must only contain one   type specifier.  */typedef int T;struct s0;union u0;enum e0; /* A GNU extension.  */enum { E0 };enum e1 { E1 };/* Not declaring anything (pedwarns).  */struct { int a; }; /* { dg-warning "warning: unnamed struct/union that defines no instances" } */int; /* { dg-warning "warning: useless type name in empty declaration" } */long; /* { dg-warning "warning: useless type name in empty declaration" } */T; /* { dg-warning "warning: useless type name in empty declaration" } */static const; /* { dg-warning "warning: useless storage class specifier in empty declaration" } *//* { dg-warning "warning: empty declaration" "static const" { target *-*-* } 24 } */union { long b; }; /* { dg-warning "warning: unnamed struct/union that defines no instances" } *//* Multiple type names (errors).  */struct s1 int; /* { dg-error "error: two or more data types in declaration specifiers" } */char union u1; /* { dg-error "error: two or more data types in declaration specifiers" } *//* { dg-warning "warning: useless type name in empty declaration" "char union" { target *-*-* } 30 } */double enum { E2 }; /* { dg-error "error: two or more data types in declaration specifiers" } *//* { dg-warning "warning: useless type name in empty declaration" "double enum" { target *-*-* } 32 } */T struct s2; /* { dg-error "error: two or more data types in declaration specifiers" } *//* { dg-warning "warning: useless type name in empty declaration" "T struct" { target *-*-* } 34 } */long union u2; /* { dg-error "error: two or more data types in declaration specifiers" } *//* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 36 } */struct s3 short; /* { dg-error "error: two or more data types in declaration specifiers" } */union u3 signed; /* { dg-error "error: two or more data types in declaration specifiers" } */unsigned struct s4; /* { dg-error "error: two or more data types in declaration specifiers" } *//* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 40 } */_Complex enum { E3 }; /* { dg-error "error: two or more data types in declaration specifiers" } *//* { dg-warning "warning: useless type name in empty declaration" "empty" { target *-*-* } 42 } */

⌨️ 快捷键说明

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