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.2.2/] [gcc/] [testsuite/] [gcc.dg/] [bitfld-1.c] - Diff between revs 149 and 154

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 149 Rev 154
/* Copyright (C) 2002 Free Software Foundation, Inc.
/* Copyright (C) 2002 Free Software Foundation, Inc.
 
 
   Tests various diagnostics about a bit-field's type and width.
   Tests various diagnostics about a bit-field's type and width.
 
 
   Source: Neil Booth, 26 Jan 2002.
   Source: Neil Booth, 26 Jan 2002.
*/
*/
 
 
/* { dg-options -pedantic } */
/* { dg-options -pedantic } */
 
 
enum foo {e1 = 0, e2, e3, e4, e5};
enum foo {e1 = 0, e2, e3, e4, e5};
 
 
int x;
int x;
typedef unsigned int ui;
typedef unsigned int ui;
 
 
struct bf1
struct bf1
{
{
  unsigned int a: 3.5;          /* { dg-error "integer constant" } */
  unsigned int a: 3.5;          /* { dg-error "integer constant" } */
  unsigned int b: x;            /* { dg-error "integer constant" } */
  unsigned int b: x;            /* { dg-error "integer constant" } */
  unsigned int c: -1;           /* { dg-error "negative width" } */
  unsigned int c: -1;           /* { dg-error "negative width" } */
  unsigned int d: 0;             /* { dg-error "zero width" } */
  unsigned int d: 0;             /* { dg-error "zero width" } */
  unsigned int : 0;              /* { dg-bogus "zero width" } */
  unsigned int : 0;              /* { dg-bogus "zero width" } */
  unsigned int : 5;
  unsigned int : 5;
  double e: 1;                  /* { dg-error "invalid type" } */
  double e: 1;                  /* { dg-error "invalid type" } */
  float f: 1;                   /* { dg-error "invalid type" } */
  float f: 1;                   /* { dg-error "invalid type" } */
  unsigned long g: 5;           /* { dg-warning "GCC extension|ISO C" } */
  unsigned long g: 5;           /* { dg-warning "GCC extension|ISO C" } */
  ui h: 5;
  ui h: 5;
  enum foo i: 2;                /* { dg-error "narrower" } */
  enum foo i: 2;                /* { dg-error "narrower" } */
    /* { dg-warning "GCC extension|ISO C" "extension" { target *-*-* } 27 } */
    /* { dg-warning "GCC extension|ISO C" "extension" { target *-*-* } 27 } */
  enum foo j: 3;                /* { dg-warning "GCC extension|ISO C" } */
  enum foo j: 3;                /* { dg-warning "GCC extension|ISO C" } */
  unsigned int k: 256;          /* { dg-error "exceeds its type" } */
  unsigned int k: 256;          /* { dg-error "exceeds its type" } */
};
};
 
 

powered by: WebSVN 2.1.0

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