* gdb.base/find.c (main): Reference search buffers.
authorDaniel Jacobowitz <drow@false.org>
Mon, 28 Dec 2009 21:45:24 +0000 (21:45 +0000)
committerDaniel Jacobowitz <drow@false.org>
Mon, 28 Dec 2009 21:45:24 +0000 (21:45 +0000)
* gdb.base/included.c (main): Reference integer.
* gdb.base/ptype.c (charfoo): Declare.
(intfoo): Call charfoo.
* gdb.base/scope0.c (useitp): New function.
(usestatics): Use useitp.
(useit): Add a type for val.
* gdb.base/scope1.c (useit1): Take a pointer argument.
(usestatics1): Update calls to useit1.
* gdb.cp/call-c.cc: Declare foo.
(main): Call foo.
* gdb.cp/m-static.cc (main): Reference test4.elsewhere.
* gdb.cp/namespace.cc (ensureOtherRefs): Declare.
(main): Call C::ensureRefs and ensureOtherRefs.
* gdb.cp/namespace1.cc (C::ensureOtherRefs): Also reference int
variables.
(ensureOtherRefs): New function.
* gdb.cp/overload.cc (main): Call all overloadNamespace variants.
* gdb.cp/templates.cc (main): Call t5i.value.

12 files changed:
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/find.c
gdb/testsuite/gdb.base/included.c
gdb/testsuite/gdb.base/ptype.c
gdb/testsuite/gdb.base/scope0.c
gdb/testsuite/gdb.base/scope1.c
gdb/testsuite/gdb.cp/call-c.cc
gdb/testsuite/gdb.cp/m-static.cc
gdb/testsuite/gdb.cp/namespace.cc
gdb/testsuite/gdb.cp/namespace1.cc
gdb/testsuite/gdb.cp/overload.cc
gdb/testsuite/gdb.cp/templates.cc

index 8aef477daac99317538fad4755532e285895a5ef..efebac1b51c3dac2a70bf2f7b1398f3501e66573 100644 (file)
@@ -1,3 +1,25 @@
+2009-12-28  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * gdb.base/find.c (main): Reference search buffers.
+       * gdb.base/included.c (main): Reference integer.
+       * gdb.base/ptype.c (charfoo): Declare.
+       (intfoo): Call charfoo.
+       * gdb.base/scope0.c (useitp): New function.
+       (usestatics): Use useitp.
+       (useit): Add a type for val.
+       * gdb.base/scope1.c (useit1): Take a pointer argument.
+       (usestatics1): Update calls to useit1.
+       * gdb.cp/call-c.cc: Declare foo.
+       (main): Call foo.
+       * gdb.cp/m-static.cc (main): Reference test4.elsewhere.
+       * gdb.cp/namespace.cc (ensureOtherRefs): Declare.
+       (main): Call C::ensureRefs and ensureOtherRefs.
+       * gdb.cp/namespace1.cc (C::ensureOtherRefs): Also reference int
+       variables.
+       (ensureOtherRefs): New function.
+       * gdb.cp/overload.cc (main): Call all overloadNamespace variants.
+       * gdb.cp/templates.cc (main): Call t5i.value.
+
 2009-12-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
        Fix compatibility with G++-4.5.
index 77acec939b25b638015b77d9e2e0ac28281b1203..4a4bb79e31a723188eddbe0b8debc1c95b9a909f 100644 (file)
@@ -67,5 +67,11 @@ main ()
 
   stop_here ();
 
+  /* Reference variables.  */
+  x = int8_search_buf[0];
+  x = int16_search_buf[0];
+  x = int32_search_buf[0];
+  x = int64_search_buf[0];
+
   return 0;
 }
index 4bf004fa077801c5049a63fd12f1bc519024e418..b58959d732761d302deffd186afad9f83b224836 100644 (file)
@@ -20,5 +20,5 @@
 int
 main()
 {
-  return 0;
+  return integer;
 }
index 46769ad54d8697ffbc4eeea84492670e5b55b5da..b154ab435943051040ffe65c3a0a0f05d1d66a3d 100644 (file)
@@ -269,10 +269,13 @@ func_type v_func_type;
 
 /***********/
 
+extern char charfoo ();
+
 typedef int foo;
 
 foo intfoo (afoo)
 {
+  charfoo (afoo);
   return (afoo * 2);
 }
 
index ad994fc0b21e2152c8c2cdd7eb6663cb44d89526..180a431d6ad7435ce8976d3518dd575642d48e6d 100644 (file)
@@ -11,6 +11,7 @@ extern void foo();
 int autovars (int bcd, int abc);
 int localscopes (int x);
 int useit (int val);
+int useitp (const int *val);
 void init0();
 void marker1 ();
 void marker2 ();
@@ -30,12 +31,13 @@ int main ()
 }
 
 /* On some systems, such as AIX, unreferenced variables are deleted
-   from the executable.  */
+   from the executable.  On other compilers, such as ARM RealView,
+   const variables without their address taken are deleted.  */
 void usestatics ()
 {
-  useit (filelocal);
-  useit (filelocal_bss);
-  useit (filelocal_ro);
+  useitp (&filelocal);
+  useitp (&filelocal_bss);
+  useitp (&filelocal_ro);
 }
 
 void init0 ()
@@ -68,7 +70,7 @@ int
 useit (int val)
 #else
 int
-useit (val)
+useit (val) int val;
 #endif
 {
     static int usedval;
@@ -77,6 +79,20 @@ useit (val)
     return val + sum_upto (0);
 }
 
+#ifdef PROTOTYPES
+int
+useitp (const int *val)
+#else
+int
+useitp (val) const int *val;
+#endif
+{
+    static int usedval;
+
+    usedval = *val;
+    return *val + sum_upto (0);
+}
+
 #ifdef PROTOTYPES
 int
 autovars (int bcd, int abc)
index 8c3252249930f766a459dc2601abc9a4846265f4..2631ead5972d9397cfb973813490e263ecbfbd5e 100644 (file)
@@ -32,23 +32,24 @@ void init1 ()
 }
 
 /* On some systems, such as AIX, unreferenced variables are deleted
-   from the executable.  */
+   from the executable.  On other compilers, such as ARM RealView,
+   const variables without their address taken are deleted.  */
 void usestatics1 ()
 {
-  void useit1 (int val);
+  void useit1 (const int *val);
   
-  useit1 (filelocal);
-  useit1 (filelocal_bss);
-  useit1 (filelocal_ro);
+  useit1 (&filelocal);
+  useit1 (&filelocal_bss);
+  useit1 (&filelocal_ro);
 }
 
 #ifdef PROTOTYPES
-void useit1 (int val)
+void useit1 (const int *val)
 #else
-void useit1 (val) int val;
+void useit1 (val) const int *val;
 #endif
 {
     static int usedval;
 
-    usedval = val;
+    usedval = *val;
 }
index cc9099320719c95e32e559ef1e7e32028f3b5e48..c648010ef5b193ef4aa9073fe6defc02e574ae65 100644 (file)
@@ -30,6 +30,10 @@ struct Foo {
 
 typedef Foo *FooHandle;
 
+extern "C" {
+  int foo(int);
+}
+
 int main()
 {
     Foo f;
@@ -37,5 +41,6 @@ int main()
     Foo* &rf = pf;
     FooHandle handle = pf;
     rf->func(); /* set breakpoint here */
+    foo(0);
     return func(0);
 }
index 9dae5ee81d76eab6966192906306945b1165219f..2a0b61c344028e94e2563dd1198826734edc116b 100644 (file)
@@ -68,6 +68,7 @@ int main()
   gnu_obj_3<long>      test3(greek);
   gnu_obj_4            test4;
 
+  test4.dummy = test4.elsewhere;
   test4.dummy = 0;
   return test4.dummy;  // breakpoint: constructs-done
 }
index ee55168528b06b061d6064b97b92f110d3ef2a10..4ac918764cc34852e80c0487deaa2051fca62200 100644 (file)
@@ -168,6 +168,8 @@ namespace C
   }
 }
 
+extern int ensureOtherRefs ();
+
 int main ()
 {
   using AAA::inA;
@@ -195,4 +197,7 @@ int main ()
   marker1();
   
   C::D::marker2 ();
+
+  C::ensureRefs ();
+  ensureOtherRefs ();
 }
index 6dff59e00cd4eba091d60af5292210965a01f14d..2ce74a5533ad1e5ca8b5ce8311a3e7f0e45c581a 100644 (file)
@@ -23,19 +23,26 @@ namespace C
     int z;
   };
 
-  void ensureOtherRefs () {
-    // NOTE (2004-04-23, carlton): This function is here only to make
-    // sure that GCC 3.4 outputs debug info for this class.
-    static OtherFileClass *c = new OtherFileClass();
-  }
-
   namespace {
     int cXOtherFile = 29;
   };
 
   int cOtherFile = 316;
+
+  void ensureOtherRefs () {
+    // NOTE (2004-04-23, carlton): This function is here only to make
+    // sure that GCC 3.4 outputs debug info for this class.
+    static OtherFileClass *c = new OtherFileClass();
+    c->z = cOtherFile + cXOtherFile;
+  }
 }
 
 namespace {
   int XOtherFile = 317;
 }
+
+int ensureOtherRefs ()
+{
+  C::ensureOtherRefs ();
+  return XOtherFile;
+}
index a41e14dc198a06317eb0791b6e9905289f9930d2..64c2090c52279ae713483096aa634b8379087830 100644 (file)
@@ -102,6 +102,10 @@ int main ()
        breakpoint();
     #endif
 
+    overloadNamespace (1);
+    overloadNamespace (dummyInstance);
+    XXX::overloadNamespace ('a');
+
     // Verify that intToChar should work:
     intToChar(1);
 
index dfb6f8ea79059e9f3e6bcbe9d3c9f13eed0e79b9..783bc2ccd12fc069420d4bd25e68e310fa242a3b 100644 (file)
@@ -782,8 +782,10 @@ int main()
 
   intBazOne ibo;
   z = ibo.baz (2, 21);
+
+  t5i.value();
+
   return 0;
-    
 }