Viewing file: Wunused-var-5.C (2.55 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
// { dg-do compile } // { dg-options "-Wunused" }
template <int N> void f1 (void) { int a; // { dg-warning "set but not used" } int b; int c; c = 1; a = b = c; }
template <int N> void f2 (int x) { int a; // { dg-warning "set but not used" } int b; int c; // { dg-warning "set but not used" } c = (a = x, b = x); }
template <int N> int f3 (int x) { int a; return a = x; }
template <int N> int f4 (int x) { int a; a = x; return a; }
template <int N> void f5 (int x) { int a[2]; // { dg-warning "set but not used" } int b; int *c, d[2]; c = d; b = x; a[b] = 1; c[b] = 1; }
template <int N> int f6 (int x) { int a[2]; int b; b = x; a[b] = 1; return a[b]; }
template <int N> void f7 (int x, int *p) { int *a[2]; a[x] = p; a[x][x] = x; }
struct S { int i; };
template <int N> void f8 (void) { struct S s; // { dg-warning "set but not used" } s.i = 6; }
template <int N> int f9 (void) { struct S s; s.i = 6; return s.i; }
template <int N> struct S f10 (void) { struct S s; s.i = 6; return s; }
extern int foo11 (int *);
template <int N> void f11 (void) { int a[2]; foo11 (a); }
template <int N> void f12 (void) { int a; a = 1; a; // { dg-warning "statement has no effect" } }
template <int N> void f13 (void (*x) (void)) { void (*a) (void); a = x; a (); }
template <int N> void f14 (void (*x) (void)) { void (*a) (void); // { dg-warning "set but not used" } a = x; }
extern void foo15 (int *);
template <int N> void f15 (void) { int a[10]; int *b = a + 2; foo15 (b); }
extern void foo16 (int **);
template <int N> void f16 (void) { int a[10]; int *b[] = { a, a + 2 }; foo16 (b); }
template <int N> void f17 (int x) { long a; // { dg-warning "set but not used" } int b; a = b = x; }
template <int N> void f18 (int x) { int a; // { dg-warning "set but not used" } int b; a = (char) (b = x); }
template <int N> int f19 (int x, int y, int z) { int a; int b; a = x; b = y; return z ? a : b; }
template <int N> int * f20 (int x) { static int a[] = { 3, 4, 5, 6 }; static int b[] = { 4, 5, 6, 7 }; static int c[] = { 5, 6, 7, 8 }; // { dg-warning "set but not used" } c[1] = 1; return x ? a : b; }
S s;
void test () { int i = 0; f1<0> (); f2<0> (0); (void) f3<0> (0); (void) f4<0> (0); f5<0> (0); (void) f6<0> (0); f7<0> (0, &i); f8<0> (); (void) f9<0> (); s = f10<0> (); f11<0> (); f12<0> (); f13<0> (f1<0>); f14<0> (f1<0>); f15<0> (); f16<0> (); f17<0> (0); f18<0> (0); (void) f19<0> (0, 0, 0); (void) f20<0> (0); }
|