OSDN Git Service

From 2000-04-28 Andreas Jaeger <aj@suse.de>:
authorcagney <cagney>
Mon, 1 May 2000 05:45:36 +0000 (05:45 +0000)
committercagney <cagney>
Mon, 1 May 2000 05:45:36 +0000 (05:45 +0000)
Properly check for GCC version number.

gdb/ChangeLog
gdb/defs.h
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.c++/templates.cc
gdb/testsuite/lib/compiler.cc

index 463d9c1..948baf6 100644 (file)
@@ -1,3 +1,8 @@
+Mon May  1 15:37:58 2000  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       From 2000-04-28 Andreas Jaeger <aj@suse.de>:
+       * defs.h: Properly check for GCC version number.
+
 2000-04-30  Mark Kettenis  <kettenis@gnu.org>
 
        Fix single-stepping out of signal trampolines.
index ff23f60..9e6218a 100644 (file)
@@ -253,7 +253,7 @@ struct cleanup
    works everywhere we use it. */
 
 #ifndef ATTR_NORETURN
-#if defined(__GNUC__) && __GNUC__ >= 2 && __GNUC_MINOR__ >= 7
+#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7))
 #define ATTR_NORETURN __attribute__ ((noreturn))
 #else
 #define ATTR_NORETURN          /* nothing */
@@ -261,7 +261,7 @@ struct cleanup
 #endif
 
 #ifndef ATTR_FORMAT
-#if defined(__GNUC__) && __GNUC__ >= 2 && __GNUC_MINOR__ >= 4
+#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 4))
 #define ATTR_FORMAT(type, x, y) __attribute__ ((format(type, x, y)))
 #else
 #define ATTR_FORMAT(type, x, y)        /* nothing */
index 6423ee2..2d7aaf6 100644 (file)
@@ -1,3 +1,9 @@
+Mon May  1 15:37:58 2000  Andrew Cagney  <cagney@b1.cygnus.com>
+
+       From 2000-04-28 Andreas Jaeger  <aj@suse.de>:
+       * gdb.c++/templates.cc: Properly check for GCC version number.
+       * lib/compiler.cc: Likewise
+
 2000-04-26  Michael Snyder  <msnyder@seadog.cygnus.com>
 
        * gdb.base/call-ar-st.exp: Bail out if target is sparclet.
index 25241dc..1ef0100 100644 (file)
@@ -290,7 +290,7 @@ void printf(const char *format, ... )
 
 class T1 {
 public:
-    static void* operator new(size_t);
+    static void* operator new(size_t) throw ();
     static void operator delete(void *pointer);
 
     void operator=(const T1&);
@@ -365,7 +365,7 @@ public:
 };
 
 void* 
-T1::operator new(size_t)
+T1::operator new(size_t) throw ()
 { return 0; }
 
 void
@@ -456,7 +456,7 @@ public:
     T5(int);
     T5(const T5<T>&);
     ~T5();
-    static void* operator new(size_t);
+    static void* operator new(size_t) throw ();
     static void operator delete(void *pointer);
     int value();
     
@@ -479,7 +479,7 @@ T5<T>::~T5()
 
 template<class T>
 void*
-T5<T>::operator new(size_t)
+T5<T>::operator new(size_t) throw ()
 { return 0; }
 
 template<class T>
@@ -516,14 +516,14 @@ public:
     int (*manage[5])(double,
                     void *(*malloc)(unsigned size),
                     void (*free)(void *pointer));
-    int (*device[5])(int open(const char *, unsigned mode, unsigned perms, int extra = 0), 
+    int (*device[5])(int open(const char *, unsigned mode, unsigned perms, int extra), 
                     int *(*read)(int fd, void *place, unsigned size),
                     int *(*write)(int fd, void *place, unsigned size),
                     void (*close)(int fd));
 };
 T5<x> t5x(5);
 
-#if !defined(__GNUC__) || (__GNUC__ >= 2 && __GNUC_MINOR__ >= 6)
+#if !defined(__GNUC__) || (__GNUC__ > 2) || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6)
 template class T5<char>;
 template class T5<int>;
 template class T5<int (*)(char, void *)>;
@@ -716,7 +716,7 @@ int main()
 
   Foo<int> fint;
   Foo<char> fchar;
-  Foo<volatile char *> fvpchar;
+  Foo<volatile char *> fvpchar = {0, 0};
 
   Bar<int, 33> bint;
   Bar<int, (4 > 3)> bint2;
index aa35c75..5cb00f6 100644 (file)
@@ -13,7 +13,7 @@
    definition made with 'set" to see if one already exists, and if so
    warn about conflicts if it is being set to something else.  */
 
-#if defined(__GNUC__) && __GNUC__ >= 2 && __GNUC_MINOR__ >= 6
+#if defined(__GNUC__) && (__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 6))
 set supports_template_debugging 1
 #else
 set supports_template_debugging 0