OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.2.2/] [gcc/] [testsuite/] [g++.old-deja/] [g++.warn/] [cast-align1.C] - Diff between revs 149 and 154

Only display areas with differences | Details | Blame | View Log

Rev 149 Rev 154
// { dg-do assemble { target sparc-*-* } }
// { dg-do assemble { target sparc-*-* } }
// { dg-options "-ansi -pedantic-errors -Wcast-align" }
// { dg-options "-ansi -pedantic-errors -Wcast-align" }
// Copyright (C) 1999 Free Software Foundation, Inc.
// Copyright (C) 1999 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 7 Dec 1999 
// Contributed by Nathan Sidwell 7 Dec 1999 
// converting a T * to void * does not need a complete T, and doesn't
// converting a T * to void * does not need a complete T, and doesn't
// increase alignment requirements.
// increase alignment requirements.
struct X;
struct X;
struct Y;
struct Y;
struct Z {double m;};
struct Z {double m;};
void f3 (X *xp, Z *zp)
void f3 (X *xp, Z *zp)
{
{
  (void *)xp;
  (void *)xp;
  (void *)zp;
  (void *)zp;
  (Y *)xp;
  (Y *)xp;
  (Y *)zp;
  (Y *)zp;
  (Z *)xp;
  (Z *)xp;
}
}
void f4 (char *ptr)
void f4 (char *ptr)
{
{
  (Z *)ptr;           // { dg-warning "" } alignment
  (Z *)ptr;           // { dg-warning "" } alignment
}
}
 
 

powered by: WebSVN 2.1.0

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