Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Michael Elizabeth Chastain <mec@shout.net>
To: gdb-patches@sources.redhat.com
Subject: [rfa] gdb_thread_db.h: #errror if no uintptr_t
Date: Wed, 26 Feb 2003 16:52:00 -0000	[thread overview]
Message-ID: <200302261652.h1QGq0R27186@duracef.shout.net> (raw)

This patch updates gdb_thread_db.h to die with a more explicit error
message if HAVE_UINTPTR_T is not defined.  'uintptr_t' is defined in
glibc 2.1.3 and later.  It might be defined in glibc versions earlier
than 2.1.3, too, but 2.1.3 is already three years old so I figure that
is enough.

Instead of dying, gdb_thread_db.h could substitute some definition
for uintptr_t.  I chose not to do this because if glibc is that old
then I don't want to support it anyways.  But a case could be made
for doing so.

Note that gdb_thread_db.h is used only on *-*-*linux* and s390-*-*.

Testing: again, I fiddled with my /usr/include/stdint.h to see both
code paths.  I also had to disable thread_db.h because my system is
new enough to actually use this file instead of the copy embedded
in gdb_thread_db.h.

This will close PR build/660.

OK to commit?

Michael C

2003-02-26  Michael Chastain  <mec@shout.net>

	Close PR build/660.
	PROBLEMS (i[3456]86-*-linux*): Note explicit error messages
	for old libc5/glibc.
	gdb_thread_db.h: Die if not HAVE_UINTPTR_T.

Index: PROBLEMS
===================================================================
RCS file: /cvs/src/src/gdb/PROBLEMS,v
retrieving revision 1.13
diff -u -r1.13 PROBLEMS
--- PROBLEMS	25 Feb 2003 21:58:20 -0000	1.13
+++ PROBLEMS	26 Feb 2003 16:41:58 -0000
@@ -69,9 +69,9 @@
 i[3456]86-*-linux*
 ------------------
 
-gdb/660: gdb does not build with linux libc5.  The symptom is a parse
-error before `uintptr_t'.  Upgrade to glibc 2.1.3 or later, which
-defines uintptr_t.
+gdb/660: gdb does not build with GNU/Linux libc5.  The symptom is a
+parse error before `uintptr_t' or an error message about `uintptr_t'.
+Upgrade to glibc 2.1.3 or later, which defines uintptr_t.
 
 gdb/1030: GNU binutils 2.12.1 and earlier versions do not work properly
 with gdb.  If you use GNU binutils, upgrade to version 2.13 or later.
Index: gdb_thread_db.h
===================================================================
RCS file: /cvs/src/src/gdb/gdb_thread_db.h,v
retrieving revision 1.4
diff -u -r1.4 gdb_thread_db.h
--- gdb_thread_db.h	12 Nov 2002 02:39:40 -0000	1.4
+++ gdb_thread_db.h	26 Feb 2003 16:41:58 -0000
@@ -199,6 +199,18 @@
   } u;
 } td_notify_t;
 
+/* Some people still have libc5 or old glibc with no uintptr_t.
+   They lose.  glibc 2.1.3 was released on 2000-02-25, and it has
+   uintptr_t, so it's reasonable to force these people to upgrade.  */
+
+#ifndef HAVE_UINTPTR_T
+#error Unable to find uintptr_t type in <stdint.h>.
+#error Your libc or glibc is too old!
+#error You must upgrade to glibc 2.1.3 or later.
+/* Inhibit compilation errors after these errors.  */
+#define uintptr_t void *
+#endif
+
 /* Structure used to report event.  */
 typedef struct td_event_msg
 {


             reply	other threads:[~2003-02-26 16:52 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-02-26 16:52 Michael Elizabeth Chastain [this message]
2003-02-26 16:59 ` Daniel Jacobowitz
2003-02-26 17:19 Michael Elizabeth Chastain
2003-02-26 18:39 ` Joel Brobecker
2003-02-26 18:45   ` Daniel Jacobowitz
2003-02-26 17:31 Michael Elizabeth Chastain
2003-02-26 19:56 Michael Elizabeth Chastain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200302261652.h1QGq0R27186@duracef.shout.net \
    --to=mec@shout.net \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox