OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [g++.dg/] [warn/] [miss-format-5.C] - Blame information for rev 301

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 301 jeremybenn
/* Test warnings for missing format attributes on function pointers.  */
2
/* Origin: Kaveh Ghazi  */
3
/* { dg-do compile } */
4
/* { dg-options "-Wmissing-format-attribute" } */
5
/* { dg-options "-Wmissing-format-attribute -Wno-abi" { target arm_eabi } } */
6
 
7
#include 
8
 
9
typedef void (*noattr_t) (const char *, ...);
10
typedef noattr_t __attribute__ ((__format__(__printf__, 1, 2))) attr_t;
11
 
12
typedef void (*vnoattr_t) (const char *, va_list);
13
typedef vnoattr_t __attribute__ ((__format__(__printf__, 1, 0))) vattr_t;
14
 
15
noattr_t
16
foo1 (noattr_t na, attr_t a, int i)
17
{
18
  if (i)
19
    return na;
20
  else
21
    return a; /* { dg-warning "candidate" "return type warning" } */
22
}
23
 
24
attr_t
25
foo2 (noattr_t na, attr_t a, int i)
26
{
27
  if (i)
28
    return na;
29
  else
30
    return a;
31
}
32
 
33
vnoattr_t
34
foo3 (vnoattr_t vna, vattr_t va, int i)
35
{
36
  if (i)
37
    return vna;
38
  else
39
    return va; /* { dg-warning "candidate" "return type warning" } */
40
}
41
 
42
vattr_t
43
foo4 (vnoattr_t vna, vattr_t va, int i)
44
{
45
  if (i)
46
    return vna;
47
  else
48
    return va;
49
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.