OSDN Git Service

Test suite change for AIX 4.3.
authorkevinb <kevinb>
Tue, 21 Mar 2000 23:01:49 +0000 (23:01 +0000)
committerkevinb <kevinb>
Tue, 21 Mar 2000 23:01:49 +0000 (23:01 +0000)
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.base/pointers.c

index e4e51d0..47bc29f 100644 (file)
@@ -1,3 +1,12 @@
+2000-03-21  Kevin Buettner <kevinb@redhat.com>
+
+       * gdb.base/pointers.c (usevar): New function.
+       (main): Make sure that global variables v_int_pointer2, rptr,
+       and y are all referenced someplace in the program by calling
+       usevar() on them.  [Some linkers delete symbols which are
+       never referenced.  The space remains, but there's no way to
+       get a (symbolic) handle on the variable from the debugger.]
+
 2000-03-14  Elena Zannoni  <ezannoni@kwikemart.cygnus.com>
 
        * gdb.base/printcmds.c: Add typedeffed arrays.
index 8cac2c2..7a41552 100644 (file)
@@ -71,33 +71,29 @@ float ** ptr_to_ptr_to_float;
 
 int y;
 
+/* Do nothing function used for forcing some of the above variables to
+   be referenced by the program source.  If the variables are not
+   referenced, some linkers will remove the symbol from the symbol
+   table making it impossible to refer to the variable in gdb.  */
+void usevar (void *var) {}
+
 int main ()
 {
-    void dummy();
-    
-    /* Ensure that malloc is a pointer type; avoid use of "void" and any include files. */
-    /* extern char *malloc();*/
-
-    /*  void *malloc(size_t);*/
-    
-
-    
+  void dummy();
+  int more_code();
+  
 #ifdef usestubs
   set_debug_traps();
   breakpoint();
 #endif
   dummy();
-/*  v_int_pointer2 = &v_int_pointer;
-  v_unsigned_int_pointer = &v_int;
-  
-  y = (v_unsigned_int_pointer == v_double_pointer);
-  
-  x = v_unsigned_int_pointer * v_double_pointer;
-  
-  v_unsigned_int_pointer = v_double_pointer;
-  
-  v_unsigned_int_pointer = v_unsigned_int;*/
-  
+
+  more_code ();
+
+  usevar (&v_int_pointer2);
+  usevar (&rptr);
+  usevar (&y);
+
   return 0;
   
 }
@@ -172,5 +168,49 @@ void dummy()
 
 }
 
+void marker1 ()
+{
+}
 
-
+int more_code()
+{
+    char C, *pC, **ppC, ***pppC, ****ppppC, *****pppppC, ******ppppppC;
+    unsigned char UC, *pUC;
+    short S, *pS;
+    unsigned short US, *pUS;
+    int I, *pI;
+    unsigned int UI, *pUI;
+    long L, *pL;
+    unsigned long UL, *pUL;
+    float F, *pF;
+    double D, *pD;
+
+    C = 'A';
+    UC = 21;
+    S = -14;
+    US = 7;
+    I = 102;
+    UI = 1002;
+    L = -234;
+    UL = 234;
+    F = 1.25E10;
+    D = -1.375E-123;
+    pC = &C;
+    ppC = &pC;
+    pppC = &ppC;
+    ppppC = &pppC;
+    pppppC = &ppppC;
+    ppppppC = &pppppC;
+    pUC = &UC;
+    pS = &S;
+    pUS = &US;
+    pI = &I;
+    pUI = &UI;
+    pL = &L;
+    pUL = &UL;
+    pF = &F;
+    pD = &D;
+    
+    marker1();
+    return 0;
+}