]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/testsuite/gcc.c-torture/execute/20010124-1.c
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / testsuite / gcc.c-torture / execute / 20010124-1.c
diff --git a/gcc/testsuite/gcc.c-torture/execute/20010124-1.c b/gcc/testsuite/gcc.c-torture/execute/20010124-1.c
deleted file mode 100644 (file)
index 5db512b..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/* Verify that structure return doesn't invoke memcpy on 
-   overlapping objects.  */
-
-extern void abort (void);
-typedef __SIZE_TYPE__ size_t;
-
-struct S {
-  char stuff[1024];
-};
-
-union U {
-  struct {
-    int space;
-    struct S s;
-  } a;
-  struct {
-    struct S s;
-    int space;
-  } b;
-};
-
-static struct S f(struct S *);
-static void g(union U *);
-
-int main()
-{
-  union U u;
-  u.b.s = f(&u.a.s);
-  u.a.s = f(&u.b.s);
-  g(&u);
-  return 0;
-}
-  
-static struct S f(struct S *p)
-{
-  return *p;
-}
-
-static void g(union U *p)
-{
-}
-
-static void *memcpy(void *a, const void *b, size_t len)
-{
-  if (a < b && a+len > b)
-    abort ();
-  if (b < a && b+len > a)
-    abort ();
-  return a;
-}