From: No Author Date: Fri, 30 Jan 2004 18:31:08 +0000 (+0000) Subject: This commit was manufactured by cvs2svn to create branch X-Git-Tag: releases/gcc-3.3.3~30 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cdd1323509d5e619cd0ace4185e66cecb1e71004;p=thirdparty%2Fgcc.git This commit was manufactured by cvs2svn to create branch 'gcc-3_3-branch'. From-SVN: r76982 --- diff --git a/gcc/testsuite/g++.dg/template/sizeof6.C b/gcc/testsuite/g++.dg/template/sizeof6.C new file mode 100644 index 000000000000..3ef3794b5b7f --- /dev/null +++ b/gcc/testsuite/g++.dg/template/sizeof6.C @@ -0,0 +1,13 @@ +// { dg-do compile } +// Contributed by Giovanni Bajo +// PR c++/13683: bogus warning about passing non-PODs through ellipsis + +struct B {}; +struct NonPOD : B {}; + +struct A +{ + static int check(...); + static NonPOD GetNonPOD(void); + enum { value = sizeof(A::check(A::GetNonPOD())) }; +}; diff --git a/gcc/testsuite/gcc.dg/20040127-1.c b/gcc/testsuite/gcc.dg/20040127-1.c new file mode 100644 index 000000000000..0ea6062a5a91 --- /dev/null +++ b/gcc/testsuite/gcc.dg/20040127-1.c @@ -0,0 +1,24 @@ +/* PR target/10904 */ +/* Origin: */ + +/* Verify that the register allocator correctly aligns + floating-point registers on SPARC64. */ + +/* { dg-do assemble } */ +/* { dg-options "-O2" } */ + +extern int foo1(); +extern int foo2(); + +void foo(int n, int b) +{ + int i, a; + + foo1(); + + a = (long)(b * ((double) 0.1)); + + for (i=0; i < n; i++) { + foo2(a); + } +} diff --git a/gcc/testsuite/gcc.dg/20040127-2.c b/gcc/testsuite/gcc.dg/20040127-2.c new file mode 100644 index 000000000000..6e56dd8fc10f --- /dev/null +++ b/gcc/testsuite/gcc.dg/20040127-2.c @@ -0,0 +1,32 @@ +/* PR target/13058 */ +/* Origin: Lloyd Parkes */ +/* Reduced testcase by Falk Hueffner */ + +/* Verify that the register allocator correctly aligns + floating-point registers on SPARC64. */ + +/* { dg-do compile } */ +/* { dg-options "-O" } */ + +typedef struct { int ThumbnailSize; } ImageInfo_t; + +double ConvertAnyFormat(void) +{ + return 0; +} + +void ProcessExifDir(ImageInfo_t *ImageInfoP, int NumDirEntries) +{ + unsigned int ThumbnailSize; + + for (; NumDirEntries;) { + Get16u(); + switch (NumDirEntries) { + case 0x0201: + case 0x0202: + ThumbnailSize = ConvertAnyFormat(); + } + } + + ImageInfoP->ThumbnailSize = ThumbnailSize; +}