Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* ptrace(2) autoconf tests
@ 2004-08-08 21:00 Mark Kettenis
  2004-08-08 21:42 ` Michael Chastain
  2004-08-09  5:37 ` Joel Brobecker
  0 siblings, 2 replies; 17+ messages in thread
From: Mark Kettenis @ 2004-08-08 21:00 UTC (permalink / raw)
  To: gdb

FYI,

I'm working on ptrace(2) autoconf tests.  I think I've got a real
nifty way to find the correct one.  It'd be great though if people
could post the ptrace prototypes from the headers on their systems.
You can find them in <sys/ptrace.h>, <unistd.h> or <ptrace.h>.  Thus
far I've got:

Ancient UNIX		int ptrace (int, int, int *, int);
BSD			int ptrace (int, pid_t, caddr_t, int);
GNU/Linux		long int ptrace (enum __request, ...);
HP-UX 11.00 (32-bit)	int ptrace (int, pid_t, int, int, int);
HP-UX 11.00 (64-bit)	long ptrace (int, pid_t, long, long, long);
Solaris 2.9		long ptrace (int, pid_t, long, long);

and

AIX 5.2L		int ptrace (int, int, int *, int, int *);
Tru64 5.1A		int ptrace (long, long int, ulong_t *, ulong_t);

The latter two are snatched from the manual pages.  I'd like to verify
them against the header files.

Cheers,

Mark


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-08 21:00 ptrace(2) autoconf tests Mark Kettenis
@ 2004-08-08 21:42 ` Michael Chastain
  2004-08-09  0:46   ` Mark Kettenis
  2004-08-09  5:37 ` Joel Brobecker
  1 sibling, 1 reply; 17+ messages in thread
From: Michael Chastain @ 2004-08-08 21:42 UTC (permalink / raw)
  To: kettenis, gdb

Here's all the ptrace(2) prototypes I found on hp testdrive machines.

Michael C

===

alpha-unknown-freebsd5.1
  /usr/include/sys/ptrace.h
    int	ptrace(int _request, pid_t _pid, caddr_t _addr, int _data);
  man 2 ptrace
    int ptrace(int request, pid_t pid, caddr_t addr, int data);

alphaev56-dec-osf4.0g
  /usr/include
    no prototype found anywhere
  man 2 ptrace
    int ptrace ( long request, long int process, ulong_t *address, ulong_t data );

alphaev68-dec-osf5.1b
  /usr/include
    no prototype found anywhere
  man 2 ptrace
    int ptrace ( long int request, long int process, ulong_t *address, ulong_t data );

alphaev67-unknown-linux-gnu + debian-unknown
alphaev67-unknown-linux-gnu + redhat-7.2
i686-pc-linux-gnu + debian-unknown
ia64-unknown-linux-gnu + debian-woody
  /usr/include/sys/ptrace.h
    extern long int ptrace (enum __ptrace_request __request, ...) __THROW;
  man 2 ptrace
    long int ptrace(enum __ptrace_request request, pid_t pid, void * addr, void * data);

i686-pc-linux-gnu + mandrake 10.0
i686-pc-linux-gnu + redhat-3AS
i686-pc-linux-gnu + redhat-3ES
i686-pc-linux-gnu + suse-9
ia64-unknown-linux-gnu + redhat-3AS
ia64-unknown-linux-gnu + suse-9
  /usr/include/sys/ptrace.h
    extern long int ptrace (enum __ptrace_request __request, ...) __THROW;
  man 2 ptrace
    long ptrace(enum __ptrace_request request, pid_t pid, void *addr, void *data);

hppa2.0w-hp-hpux11.11
  /usr/include/sys/ptrace.h
    #if !defined(__STDC_32__MODE__)
      extern long ptrace(int, pid_t, long, long, long);
      extern int64_t ptrace64(int, pid_t, uint64_t, uint64_t, uint64_t);
    #else
      extern int ptrace(int, pid_t, int, int, int);
    #endif
  man 2 ptrace
    int ptrace( int request, pid_t pid, int addr, int data, int addr2);

ia64-hp-hpux11.23
  /usr/include/sys/ptrace.h
    #if !defined(__STDC_32__MODE__)
      # if defined(__ia64) && !defined(_LIBC)
	/* pragmas needed to support -B protected */
	# pragma extern ptrace64
      # endif
      extern long ptrace(int, pid_t, long, long, long);
      extern int64_t ptrace64(int, pid_t, uint64_t, uint64_t, uint64_t);
    #else
      extern int ptrace(int, pid_t, int, int, int);
    #endif
  man 2 ptrace
    long ptrace( int request, pid_t pid, long addr, long data, long addr2);

i386-unknown-freebsd4.9
i386-unknown-netbsdelf1.6
  /usr/include/sys/ptrace.h
    int	ptrace __P((int _request, pid_t _pid, caddr_t _addr, int _data));
  man 2 ptrace
    int ptrace(int request, pid_t pid, caddr_t addr, int data);


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-08 21:42 ` Michael Chastain
@ 2004-08-09  0:46   ` Mark Kettenis
  2004-08-09  7:19     ` Michael Chastain
  2004-08-09 13:09     ` Andrew Cagney
  0 siblings, 2 replies; 17+ messages in thread
From: Mark Kettenis @ 2004-08-09  0:46 UTC (permalink / raw)
  To: mec.gnu; +Cc: gdb

   Date: Sun, 08 Aug 2004 17:42:16 -0400
   From: Michael Chastain <mec.gnu@mindspring.com>

   Here's all the ptrace(2) prototypes I found on hp testdrive machines.

Ah, smart.  I signed myself up again.  The missing prototype on Tru64
is suspicious; is the return value really `int'?  Current GDB code
seems to suggest it isn't.

Anyway, below is a first hack at the autoconf tests.  The tests
themselves are inspired by the standard AC_FUNC_CLOSEDIR_VOID and
AC_FUNC_SELECT_ARGTYPES tests.  My code defines PTRACE_LONG if the
return type of ptrace(2) is `long', defines PTRACE_TYPE_ARG3 to the
type of the third argument of ptrace(2) and defines PTRACE_TYPE_ARG5
to the type of the fifth argument of ptrace(2) if it has one.
PTRACE_TYPE_ARG3 will replace PTRACE_ARG3_TYPE.  PTRACE_XFER_TYPE will
be set based on PTRACE_LONG and PTRACE_TYPE_ARG5 will replace
FIVE_ARG_PTRACE.

I've verified that it gets things right on FreeBSD/i386 4.7, HP-UX
11.00, HP-UX 11.11, HP-UX 11.23, RedHat 7.2 Alpha, Tru64 4.0g, Tru64
5.1b, Ultrix/VAX 4.0 and Solaris 2.9 SPARC.  If possible I've also
tried the vendor compiler.  The bundled compiler on HP-UX
(/usr/bin/cc) gets things wrong, but that's the broken K&R compiler
that cannot compile GDB anyway.

If we all agree this is a good thing, that is, if nobody objetcs) I'll
probably integrate and commit this next weekend or so.

Mark



dnl Process this file with autoconf to produce a configure script.
AC_INIT(configure.in)
AC_PREREQ(2.13)
AC_CONFIG_HEADER(config.h)

dnl Checks for programs.
AC_PROG_CC
AC_AIX

dnl Checks for libraries.

dnl Checks for header files.
AC_CHECK_HEADERS(sys/types.h)
AC_CHECK_HEADERS(sys/ptrace.h unistd.h)

dnl Checks for typedefs, structures, and compiler characteristics.

dnl Checks for library functions.
gdb_ptrace_headers='
#if HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
#if HAVE_SYS_PTRACE_H
# include <sys/ptrace.h>
#endif
#if HAVE_UNISTD_H
# include <unistd.h>
#endif
'

# XXX Replace with AC_CHECK_DECL.
AC_CACHE_CHECK([whether ptrace is declared], gdb_cv_have_decl_ptrace,
  AC_TRY_COMPILE($gdb_ptrace_headers, [
#ifndef ptrace
  char *p = (char *) ptrace;
#endif
],
    gdb_cv_have_decl_ptrace=yes,
    gdb_cv_have_decl_ptrace=no))
if test $gdb_cv_have_decl_ptrace = no; then
  : ${gdb_cv_func_ptrace_long=no}
  : ${gdb_cv_func_ptrace_args='int,int,long,long'}
fi

AC_CACHE_CHECK([whether ptrace returns long], gdb_cv_func_ptrace_long,
  AC_TRY_COMPILE($gdb_ptrace_headers,
    [extern long ptrace ();],
    gdb_cv_func_ptrace_long=yes,
    gdb_cv_func_ptrace_long=no))
if test $gdb_cv_func_ptrace_long = yes; then
  AC_DEFINE(PTRACE_LONG, 1,
            [Define to 1 if the ptrace function returns long instead of int.])
fi

AC_CACHE_CHECK([types of arguments for ptrace], gdb_cv_func_ptrace_args, [
if test "$gdb_cv_func_ptrace_long" = yes; then
  gdb_ret='long'
else
  gdb_ret='int'
fi
for gdb_arg1 in 'int' 'long'; do
 for gdb_arg2 in 'pid_t' 'int' 'long'; do
  for gdb_arg3 in 'int *' 'caddr_t' 'int' 'long'; do
   for gdb_arg4 in 'int' 'long'; do
     AC_TRY_COMPILE($gdb_ptrace_headers, [
extern $gdb_ret ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4);
], [gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4";
    break 4;])
    for gdb_arg5 in 'int *' 'int' 'long'; do
     AC_TRY_COMPILE($gdb_ptrace_headers, [
extern $gdb_ret ptrace ($gdb_arg1, $gdb_arg2, $gdb_arg3, $gdb_arg4, $gdb_arg5);
], [
gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4,$gdb_arg5";
    break 5;])
    done
   done
  done
 done
done
# Provide a safe default value.
: ${gdb_cv_func_ptrace_args='int,int,long,long'}
])
ac_save_IFS=$IFS; IFS=','
set dummy `echo "$gdb_cv_func_ptrace_args" | sed 's/\*/\*/g'`
IFS=$ac_save_IFS
shift
AC_DEFINE_UNQUOTED(PTRACE_TYPE_ARG3, ($[3]),
		   [Define to the type of arg 3 for ptrace.])
if test -n "$[5]"; then
  AC_DEFINE_UNQUOTED(PTRACE_TYPE_ARG5, ($[5]),
		     [Define to the type of arg 5 for ptrace.])
fi

AC_OUTPUT()


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-08 21:00 ptrace(2) autoconf tests Mark Kettenis
  2004-08-08 21:42 ` Michael Chastain
@ 2004-08-09  5:37 ` Joel Brobecker
  2004-08-09 21:52   ` Mark Kettenis
  1 sibling, 1 reply; 17+ messages in thread
From: Joel Brobecker @ 2004-08-09  5:37 UTC (permalink / raw)
  To: Mark Kettenis; +Cc: gdb

Mark,

Thanks muchly for looking into this!

> AIX 5.2L		int ptrace (int, int, int *, int, int *);

Here is the prototype from AIX 5.1:

  int ptrace(int request, int32long64_t id, int *address,
             int data, int *buffer);

were int32long64_t is defined as "signed long".  I checked the manpage,
and indeed, they say the second parameter is an int! I looked at the
autoconf test you wrote, and it seems that it would handle the AIX case
very well.

-- 
Joel


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09  0:46   ` Mark Kettenis
@ 2004-08-09  7:19     ` Michael Chastain
  2004-08-09 13:09     ` Andrew Cagney
  1 sibling, 0 replies; 17+ messages in thread
From: Michael Chastain @ 2004-08-09  7:19 UTC (permalink / raw)
  To: kettenis; +Cc: gdb

Mark Kettenis <kettenis@chello.nl> wrote:
> Ah, smart.  I signed myself up again.  The missing prototype on Tru64
> is suspicious; is the return value really `int'?  Current GDB code
> seems to suggest it isn't.

The man page says 'int'.

I did:

  cd /usr/include
  grep ptrace `find * -type -f print`

And I did:

  echo '#include <sys/signal.h>' > ptrace.c
  echo '#include <sys/ptrace.h>' >> ptrace.c
  cc -E ptrace.c > z1.out
  /usr/local/bin/gcc -E ptrace.c > z2.out

No prototype in sight.

All this on spe147.testdrive.hp.com,

Michael C


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09  0:46   ` Mark Kettenis
  2004-08-09  7:19     ` Michael Chastain
@ 2004-08-09 13:09     ` Andrew Cagney
  2004-08-09 15:34       ` Mark Kettenis
  1 sibling, 1 reply; 17+ messages in thread
From: Andrew Cagney @ 2004-08-09 13:09 UTC (permalink / raw)
  To: Mark Kettenis; +Cc: mec.gnu, gdb

> Anyway, below is a first hack at the autoconf tests.  The tests
> themselves are inspired by the standard AC_FUNC_CLOSEDIR_VOID and
> AC_FUNC_SELECT_ARGTYPES tests.  My code defines PTRACE_LONG if the
> return type of ptrace(2) is `long', defines PTRACE_TYPE_ARG3 to the
> type of the third argument of ptrace(2) and defines PTRACE_TYPE_ARG5
> to the type of the fifth argument of ptrace(2) if it has one.
> PTRACE_TYPE_ARG3 will replace PTRACE_ARG3_TYPE.  PTRACE_XFER_TYPE will
> be set based on PTRACE_LONG and PTRACE_TYPE_ARG5 will replace
> FIVE_ARG_PTRACE.

How should we use this - I'm getting a bit lost with all the macros. 
Should autoconf define PTRACE_XFER_TYPE (PTRACE_RETURN_TYPE?) directly.

Having this will let us wack a chunk of the nm*.h contents so looking good!

--

Hmm, I just noticed call_ptrace() - appears to be something from the HP 
merge (...).  Perhaphs I should ari the requirement that all ptrace 
calls are routed through that.  Would let us implement `set debug ptrace!'.

Andrew



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09 13:09     ` Andrew Cagney
@ 2004-08-09 15:34       ` Mark Kettenis
  2004-08-09 15:53         ` Andrew Cagney
  0 siblings, 1 reply; 17+ messages in thread
From: Mark Kettenis @ 2004-08-09 15:34 UTC (permalink / raw)
  To: cagney; +Cc: mec.gnu, gdb

   Date: Mon, 09 Aug 2004 09:09:31 -0400
   From: Andrew Cagney <cagney@gnu.org>

   > Anyway, below is a first hack at the autoconf tests.  The tests
   > themselves are inspired by the standard AC_FUNC_CLOSEDIR_VOID and
   > AC_FUNC_SELECT_ARGTYPES tests.  My code defines PTRACE_LONG if the
   > return type of ptrace(2) is `long', defines PTRACE_TYPE_ARG3 to the
   > type of the third argument of ptrace(2) and defines PTRACE_TYPE_ARG5
   > to the type of the fifth argument of ptrace(2) if it has one.
   > PTRACE_TYPE_ARG3 will replace PTRACE_ARG3_TYPE.  PTRACE_XFER_TYPE will
   > be set based on PTRACE_LONG and PTRACE_TYPE_ARG5 will replace
   > FIVE_ARG_PTRACE.

   How should we use this - I'm getting a bit lost with all the macros. 
   Should autoconf define PTRACE_XFER_TYPE (PTRACE_RETURN_TYPE?) directly.

Well, I'm trying to get some consistency.  But having autoconf set
PTRACE_LONG and then define PTRACE_XFER_TYPE based on that, is a bit
silly.  I'll adjust the test and have it set PTRACE_TYPE_RETURN such
that we can use the last one in our code.

   Having this will let us wack a chunk of the nm*.h contents so looking good!

   --

   Hmm, I just noticed call_ptrace() - appears to be something from the HP 
   merge (...).  Perhaphs I should ari the requirement that all ptrace 
   calls are routed through that.  Would let us implement `set debug ptrace!'.

Is that a worthwhile thing to have?  Well, I guess so.  One of things
I'm working on, is a portable "gdb_ptrace.h".  We could simply add a
macro there that takes care of the conversion.

Anyway, given the favourable response, I think I'll just go ahead with
this.

Mark


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09 15:34       ` Mark Kettenis
@ 2004-08-09 15:53         ` Andrew Cagney
  0 siblings, 0 replies; 17+ messages in thread
From: Andrew Cagney @ 2004-08-09 15:53 UTC (permalink / raw)
  To: Mark Kettenis; +Cc: mec.gnu, gdb

> Is that a worthwhile thing to have?  Well, I guess so.  One of things
> I'm working on, is a portable "gdb_ptrace.h".  We could simply add a
> macro there that takes care of the conversion.

Being able to trace ptrace calls, yes, definitly.  As for a macro, the 
user should see what they get -> s/ptrace/call_ptrace/.

Andrew



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09  5:37 ` Joel Brobecker
@ 2004-08-09 21:52   ` Mark Kettenis
  2004-08-10  5:49     ` Joel Brobecker
  2004-08-10 19:03     ` Joel Brobecker
  0 siblings, 2 replies; 17+ messages in thread
From: Mark Kettenis @ 2004-08-09 21:52 UTC (permalink / raw)
  To: brobecker; +Cc: gdb

Can people test this on AIX and HP-UX 10.20?  I'm fairly certain this
will work, but I can't really test this myself, until I find some
10.20 installation media for my 712.

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>
 
	* infptrace.c (call_ptrace): Select code based on PTRACE_TYPE_ARG5
	instead of FIVE_ARG_PTRACE.

 
Index: infptrace.c
===================================================================
RCS file: /cvs/src/src/gdb/infptrace.c,v
retrieving revision 1.36
diff -u -p -r1.36 infptrace.c
--- infptrace.c 6 Aug 2004 20:47:25 -0000 1.36
+++ infptrace.c 9 Aug 2004 21:46:45 -0000
@@ -122,7 +122,7 @@ call_ptrace (int request, int pid, PTRAC
   if (request == PT_SETTRC)
     {
       errno = 0;
-#if !defined (FIVE_ARG_PTRACE)
+#ifndef PTRACE_TYPE_ARG5
       pt_status = ptrace (PT_SETTRC, pid, addr, data);
 #else
       /* Deal with HPUX 8.0 braindamage.  We never use the
@@ -159,7 +159,7 @@ call_ptrace (int request, int pid, PTRAC
   saved_errno = errno;
   errno = 0;
 #endif
-#if !defined (FIVE_ARG_PTRACE)
+#ifndef PTRACE_TYPE_ARG5
   pt_status = ptrace (request, pid, addr, data);
 #else
   /* Deal with HPUX 8.0 braindamage.  We never use the
@@ -178,7 +178,7 @@ call_ptrace (int request, int pid, PTRAC
 }
 
 
-#if defined (DEBUG_PTRACE) || defined (FIVE_ARG_PTRACE)
+#if defined (DEBUG_PTRACE) || defined (PTRACE_TYPE_ARG5)
 /* For the rest of the file, use an extra level of indirection */
 /* This lets us breakpoint usefully on call_ptrace. */
 #define ptrace call_ptrace


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09 21:52   ` Mark Kettenis
@ 2004-08-10  5:49     ` Joel Brobecker
  2004-08-10  6:56       ` Michael Chastain
  2004-08-10 19:03     ` Joel Brobecker
  1 sibling, 1 reply; 17+ messages in thread
From: Joel Brobecker @ 2004-08-10  5:49 UTC (permalink / raw)
  To: Mark Kettenis; +Cc: gdb

> Can people test this on AIX and HP-UX 10.20?  I'm fairly certain this
> will work, but I can't really test this myself, until I find some
> 10.20 installation media for my 712.

I just started the testing for AIX 4.3.2 and 5.1, but we don't have
any 20.20 systems. I think Michael should be able to set something up.

> from  Mark Kettenis  <kettenis@gnu.org>
>  
> 	* infptrace.c (call_ptrace): Select code based on PTRACE_TYPE_ARG5
> 	instead of FIVE_ARG_PTRACE.

(thanks for taking care of this).

-- 
Joel


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-10  5:49     ` Joel Brobecker
@ 2004-08-10  6:56       ` Michael Chastain
  2004-08-10  7:20         ` Marcel Moolenaar
  0 siblings, 1 reply; 17+ messages in thread
From: Michael Chastain @ 2004-08-10  6:56 UTC (permalink / raw)
  To: dave, kettenis, brobecker; +Cc: gdb

Joel Brobecker <brobecker@gnat.com> wrote:
> I just started the testing for AIX 4.3.2 and 5.1, but we don't have
> any 20.20 systems. I think Michael should be able to set something up.

The HP Test Drive cluster doesn't have any hpux 10.20 systems.
They have an hpux 11.11 system, and I have access to an hpux 11.00
system somewhere else, but no 10.20.

Here is the deal with hpux 10.20.  I tried to remove it from gdb
last year, but John David Anglin, the hpux gcc maintainer, still
has one hpux 10.20 system in production.  So we still have support
for hpux 10.20 in gdb source.

Mark, perhaps you and Dave could work together to get the ptrace
patch tested on an hpux 10.20 system?

The big difference with hpux 10.20 is that it has an optional threads
library (not pthreads compatible) which hpux 11.00 and hpux 11.11 don't
have.

Also, for background info, here is a table of hpux dates:

  http://software.hp.com/RELEASES-MEDIA/history/slide2.html

  Version  Introduced  Discontinued  Obsolete
  9.04     1993-11     1997-10-31    1998-12-31
  10.01    1995-07     2000-10-31    2003-06-30
  10.10    1996-02     1999-06-30    2003-06-30
  10.20    1996-08     2002-06-30    2003-06-30
  10.30    1997-08     1998-05-31    1999-05-31
  11.00    1997-11     2004-03-31    2006-12-31
  B.11.11  2000-06     TBD           TBD
  B.11.20  2001-06     2002-12-01    2003-06-30
  B.11.22  2002-06     TBD           TBD

  B11.20 is itanium based
  B11.22 is itanium-2 based
  B11.23 is itanium-2 based and is the current release

Michael C


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-10  6:56       ` Michael Chastain
@ 2004-08-10  7:20         ` Marcel Moolenaar
  2004-08-10 14:45           ` John David Anglin
  0 siblings, 1 reply; 17+ messages in thread
From: Marcel Moolenaar @ 2004-08-10  7:20 UTC (permalink / raw)
  To: Michael Chastain; +Cc: dave, kettenis, brobecker, gdb

On Tue, Aug 10, 2004 at 02:56:18AM -0400, Michael Chastain wrote:
> 
> Mark, perhaps you and Dave could work together to get the ptrace
> patch tested on an hpux 10.20 system?

If all else fails: I have access to a 10.20 machine. I'm short on
time as it is but if you really like this tested and noone seems
to be available, let me know...

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-10  7:20         ` Marcel Moolenaar
@ 2004-08-10 14:45           ` John David Anglin
  2004-08-10 18:52             ` Joel Brobecker
  0 siblings, 1 reply; 17+ messages in thread
From: John David Anglin @ 2004-08-10 14:45 UTC (permalink / raw)
  To: Marcel Moolenaar; +Cc: mec.gnu, kettenis, brobecker, gdb

> On Tue, Aug 10, 2004 at 02:56:18AM -0400, Michael Chastain wrote:
> > 
> > Mark, perhaps you and Dave could work together to get the ptrace
> > patch tested on an hpux 10.20 system?
> 
> If all else fails: I have access to a 10.20 machine. I'm short on
> time as it is but if you really like this tested and noone seems
> to be available, let me know...

I can do this.  What's the URL for the patch?

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-10 14:45           ` John David Anglin
@ 2004-08-10 18:52             ` Joel Brobecker
  2004-08-11  2:16               ` John David Anglin
  0 siblings, 1 reply; 17+ messages in thread
From: Joel Brobecker @ 2004-08-10 18:52 UTC (permalink / raw)
  To: John David Anglin; +Cc: Marcel Moolenaar, mec.gnu, kettenis, gdb

> > > Mark, perhaps you and Dave could work together to get the ptrace
> > > patch tested on an hpux 10.20 system?
> > 
> > If all else fails: I have access to a 10.20 machine. I'm short on
> > time as it is but if you really like this tested and noone seems
> > to be available, let me know...
> 
> I can do this.  What's the URL for the patch?

Here it is: http://sources.redhat.com/ml/gdb/2004-08/msg00142.html

-- 
Joel


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-09 21:52   ` Mark Kettenis
  2004-08-10  5:49     ` Joel Brobecker
@ 2004-08-10 19:03     ` Joel Brobecker
  1 sibling, 0 replies; 17+ messages in thread
From: Joel Brobecker @ 2004-08-10 19:03 UTC (permalink / raw)
  To: Mark Kettenis; +Cc: gdb

Mark,

> Can people test this on AIX and HP-UX 10.20?  I'm fairly certain this
> will work, but I can't really test this myself, until I find some
> 10.20 installation media for my 712.

I tested your patch below successfully on our 2 AIX systems (4.3.2 and
5.1). I also verified that configure found the right profile for ptrace
and that infptrace.c compiled without any warning.

About configure finding the right profile, there is one thing I am not
sure about: The second parameter reported by configure is pid_t, while
the include file seem to be saying that it's an int on 4.3.2 and a
signed long on 5.1. There were no warnings during the build, so I
assumed all was right.

> Index: ChangeLog
> from  Mark Kettenis  <kettenis@gnu.org>
>  
> 	* infptrace.c (call_ptrace): Select code based on PTRACE_TYPE_ARG5
> 	instead of FIVE_ARG_PTRACE.

-- 
Joel


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
  2004-08-10 18:52             ` Joel Brobecker
@ 2004-08-11  2:16               ` John David Anglin
  0 siblings, 0 replies; 17+ messages in thread
From: John David Anglin @ 2004-08-11  2:16 UTC (permalink / raw)
  To: Joel Brobecker; +Cc: marcel, mec.gnu, kettenis, gdb

> > > > Mark, perhaps you and Dave could work together to get the ptrace
> > > > patch tested on an hpux 10.20 system?
> > > 
> > > If all else fails: I have access to a 10.20 machine. I'm short on
> > > time as it is but if you really like this tested and noone seems
> > > to be available, let me know...
> > 
> > I can do this.  What's the URL for the patch?
> 
> Here it is: http://sources.redhat.com/ml/gdb/2004-08/msg00142.html

I did a build with todays cvs and the above patch.  I had to kill
make check because expect hung at this point:

Running ../../../src/gdb/testsuite/gdb.base/watchpoint.exp ...
FAIL: gdb.base/watchpoint.exp: calling function with watchpoint enabled
/bin/sh: 29321 Killed

The test FAILs up to that point are attached below.  I suspect that
the ptrace change is ok but I will redo the build without the change.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

FAIL: gdb.ada/null_record.exp: ptype on null record
FAIL: gdb.asm/asm-source.exp: f at main
FAIL: gdb.asm/asm-source.exp: next over macro
FAIL: gdb.asm/asm-source.exp: step into foo2
FAIL: gdb.asm/asm-source.exp: info target (timeout)
FAIL: gdb.asm/asm-source.exp: info symbol (timeout)
FAIL: gdb.asm/asm-source.exp: list
FAIL: gdb.asm/asm-source.exp: search
FAIL: gdb.asm/asm-source.exp: f in foo2
FAIL: gdb.asm/asm-source.exp: n in foo2
FAIL: gdb.asm/asm-source.exp: bt ALL in foo2
FAIL: gdb.asm/asm-source.exp: bt 2 in foo2
FAIL: gdb.asm/asm-source.exp: s 2
FAIL: gdb.asm/asm-source.exp: n 2
FAIL: gdb.asm/asm-source.exp: bt 3 in foo3
FAIL: gdb.asm/asm-source.exp: info source asmsrc1.s
FAIL: gdb.asm/asm-source.exp: finish from foo3
FAIL: gdb.asm/asm-source.exp: info source asmsrc2.s
FAIL: gdb.asm/asm-source.exp: info sources (timeout)
FAIL: gdb.asm/asm-source.exp: info line
FAIL: gdb.asm/asm-source.exp: next over foo3
FAIL: gdb.asm/asm-source.exp: return from foo2
FAIL: gdb.asm/asm-source.exp: look at global variable
FAIL: gdb.asm/asm-source.exp: x/i &globalvar (timeout)
FAIL: gdb.asm/asm-source.exp: disassem &globalvar &globalvar+1 (timeout)
FAIL: gdb.asm/asm-source.exp: look at static variable
FAIL: gdb.asm/asm-source.exp: x/i &staticvar (timeout)
FAIL: gdb.asm/asm-source.exp: disassem &staticvar &staticvar+1 (timeout)
FAIL: gdb.asm/asm-source.exp: look at static function
FAIL: gdb.base/all-bin.exp: continuing after dummy()
FAIL: gdb.base/all-bin.exp: print value of v_int+v_char
FAIL: gdb.base/all-bin.exp: print value of v_int+v_short
FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_char
FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_char
FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_short
FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_short
FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_int
FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_int
FAIL: gdb.base/all-bin.exp: print value of v_int+v_long
FAIL: gdb.base/all-bin.exp: print value of v_int+v_signed_long
FAIL: gdb.base/all-bin.exp: print value of v_int+v_unsigned_long
FAIL: gdb.base/all-bin.exp: print value of v_int+v_float
FAIL: gdb.base/all-bin.exp: print value of v_int+v_double
FAIL: gdb.base/all-bin.exp: print value of v_int<=v_short
FAIL: gdb.base/all-bin.exp: print value of v_int<=v_signed_short
FAIL: gdb.base/all-bin.exp: print value of v_int<=v_unsigned_short
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_short
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_signed_char
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_char
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_short
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_signed_int
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_unsigned_int
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_long
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_signed_long
FAIL: gdb.base/all-bin.exp: print value of v_int&&v_float
FAIL: gdb.base/annota1.exp: breakpoint info
FAIL: gdb.base/annota1.exp: run until main breakpoint
FAIL: gdb.base/annota1.exp: print array
FAIL: gdb.base/annota1.exp: send SIGUSR1
FAIL: gdb.base/annota1.exp: break at 28
FAIL: gdb.base/annota3.exp: breakpoint info (pattern 3 + sentinel)
FAIL: gdb.base/annota3.exp: run until main breakpoint (pattern 8)
FAIL: gdb.base/annota3.exp: print array (pattern 2 + sentinel)
FAIL: gdb.base/annota3.exp: send SIGUSR1 (pattern 6)
FAIL: gdb.base/annota3.exp: backtrace @ signal handler (pattern 1)
FAIL: gdb.base/annota3.exp: break at 28 (pattern 3 + sentinel)
FAIL: gdb.base/annota3.exp: annotate ignore count change (pattern 6)
FAIL: gdb.base/annota3.exp: next to exit loop (pattern 5)
FAIL: gdb.base/annota3.exp: breakpoint ignore count (pattern 5)
FAIL: gdb.base/assign.exp: continuing after dummy()
FAIL: gdb.base/assign.exp: v_int+=v_char
FAIL: gdb.base/assign.exp: v_int+=v_signed_char
FAIL: gdb.base/assign.exp: v_int+=v_unsigned_char
FAIL: gdb.base/assign.exp: v_int+=v_short
FAIL: gdb.base/assign.exp: v_int+=v_signed_short
FAIL: gdb.base/assign.exp: v_int+=v_unsigned_short
FAIL: gdb.base/assign.exp: v_int+=v_signed_int
FAIL: gdb.base/assign.exp: v_int+=v_unsigned_int
FAIL: gdb.base/assign.exp: v_int+=v_long
FAIL: gdb.base/assign.exp: v_int+=v_signed_long
FAIL: gdb.base/assign.exp: v_int+=v_unsigned_long
FAIL: gdb.base/assign.exp: v_int+=v_float
FAIL: gdb.base/assign.exp: v_int+=v_signed_long
FAIL: gdb.base/break.exp: breakpoint info
FAIL: gdb.base/break.exp: run until function breakpoint
FAIL: gdb.base/break.exp: Temporary breakpoint info
FAIL: gdb.base/break.exp: set catch vfork, never expected to trigger
FAIL: gdb.base/break.exp: hit breakpoint on called function
FAIL: gdb.base/break.exp: backtrace while in called function
FAIL: gdb.base/break.exp: finish from called function
FAIL: gdb.base/break.exp: run until function breakpoint, optimized file
FAIL: gdb.base/call-ar-st.exp: print print_double_array(double_array) (pattern 1)
FAIL: gdb.base/call-ar-st.exp: print print_char_array(char_array) (pattern 1)
FAIL: gdb.base/call-ar-st.exp: print print_double_array(array_d) (pattern 1)
FAIL: gdb.base/call-ar-st.exp: print sum_array_print(10, *list1, *list2, *list3, *list4)
FAIL: gdb.base/call-ar-st.exp: next to 1237
FAIL: gdb.base/call-ar-st.exp: continue to 1241
FAIL: gdb.base/call-ar-st.exp: check args of sum_array_print (the program is no longer running)
FAIL: gdb.base/call-ar-st.exp: continue to 1281
FAIL: gdb.base/call-ar-st.exp: print print_small_structs (pattern 1)
FAIL: gdb.base/call-ar-st.exp: print compute_with_small_structs(20)
FAIL: gdb.base/call-ar-st.exp: print print_ten_doubles (pattern 1)
FAIL: gdb.base/call-ar-st.exp: continue to 1286 (the program is no longer running)
FAIL: gdb.base/call-ar-st.exp: step into print_long_arg_list
FAIL: gdb.base/call-ar-st.exp: print print_small_structs from print_long_arg_list (pattern 1)
FAIL: gdb.base/call-ar-st.exp: continue to 1300 (the program is no longer running)
FAIL: gdb.base/call-ar-st.exp: step into init_bit_flags_combo
FAIL: gdb.base/call-ar-st.exp: print print_bit_flags_combo from init_bit_flags_combo
FAIL: gdb.base/call-ar-st.exp: continue to 1305 (the program is no longer running)
FAIL: gdb.base/call-ar-st.exp: print print_long_arg_list (pattern 1)
FAIL: gdb.base/call-ar-st.exp: continue to 1311 (the program is no longer running)
FAIL: gdb.base/call-ar-st.exp: print sum_struct_print(10, *struct1, *struct2, *struct3, *struct4)
FAIL: gdb.base/call-ar-st.exp: print print_struct_rep(*struct1, *struct2, *struct3) (pattern 1)
FAIL: gdb.base/call-ar-st.exp: print print_one_large_struct(*list1)
FAIL: gdb.base/call-rt-st.exp: print print_struct_rep(*struct1)
FAIL: gdb.base/call-rt-st.exp: print print_one_large_struct(*list1)
FAIL: gdb.base/call-rt-st.exp: print print_one_double(*d1)
FAIL: gdb.base/call-rt-st.exp: print print_two_floats(*f3)
FAIL: gdb.base/call-rt-st.exp: print print_bit_flags_char(*flags)
FAIL: gdb.base/call-rt-st.exp: print print_bit_flags_short(*flags)
FAIL: gdb.base/call-rt-st.exp: print print_bit_flags(*flags)
FAIL: gdb.base/call-rt-st.exp: print print_bit_flags_combo(*flags_combo)
FAIL: gdb.base/call-rt-st.exp: print print_three_chars(*three_char)
FAIL: gdb.base/call-rt-st.exp: print print_five_chars(*five_char)
FAIL: gdb.base/call-rt-st.exp: print print_int_char_combo(*int_char_combo)
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tc
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tc
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-ts
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-ts
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-ti
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-ti
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tl
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tl
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tll
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tll
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tf
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tf
FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tf
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-td
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-td
FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-td
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-tld
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-tld
FAIL: gdb.base/call-sc.exp: zed L for return; return call-sc-tld
FAIL: gdb.base/call-sc.exp: return foo; return call-sc-tld
FAIL: gdb.base/call-sc.exp: value foo returned; return call-sc-tld
FAIL: gdb.base/call-sc.exp: advance to fun for finish; return call-sc-tld
FAIL: gdb.base/call-sc.exp: zed L for finish; return call-sc-tld
FAIL: gdb.base/call-sc.exp: finish foo; return call-sc-tld
FAIL: gdb.base/call-sc.exp: value foo finished; return call-sc-tld
FAIL: gdb.base/call-sc.exp: p/c fun(); call call-sc-te
FAIL: gdb.base/call-sc.exp: p/c L; call call-sc-te
FAIL: gdb.base/call-strs.exp: step after assignment to s
FAIL: gdb.base/call-strs.exp: next over strcpy
FAIL: gdb.base/call-strs.exp: print buf
FAIL: gdb.base/call-strs.exp: print s
FAIL: gdb.base/call-strs.exp: print str_func1(s)
FAIL: gdb.base/call-strs.exp: print str_func1("test string")
FAIL: gdb.base/call-strs.exp: call str_func1(s)
FAIL: gdb.base/call-strs.exp: call str_func1("test string")
FAIL: gdb.base/call-strs.exp: print str_func1(buf)
FAIL: gdb.base/call-strs.exp: call str_func1(buf)
FAIL: gdb.base/call-strs.exp: print str_func("a","b","c","d","e","f","g")
FAIL: gdb.base/call-strs.exp: call str_func("a","b","c","d","e","f","g")
FAIL: gdb.base/call-strs.exp: print str_func(s,s,s,s,s,s,s)
FAIL: gdb.base/call-strs.exp: call str_func(s,s,s,s,s,s,s)
FAIL: gdb.base/callfuncs.exp: next to t_double_values
FAIL: gdb.base/callfuncs.exp: next to t_structs_c
FAIL: gdb.base/callfuncs.exp: p t_char_values(0,0)
FAIL: gdb.base/callfuncs.exp: p t_char_values('a','b')
FAIL: gdb.base/callfuncs.exp: p t_char_values(char_val1,char_val2)
FAIL: gdb.base/callfuncs.exp: p t_char_values('a',char_val2)
FAIL: gdb.base/callfuncs.exp: p t_char_values(char_val1,'b')
FAIL: gdb.base/callfuncs.exp: p t_short_values(0,0)
FAIL: gdb.base/callfuncs.exp: p t_short_values(10,-23)
FAIL: gdb.base/callfuncs.exp: p t_short_values(short_val1,short_val2)
FAIL: gdb.base/callfuncs.exp: p t_short_values(10,short_val2)
FAIL: gdb.base/callfuncs.exp: p t_short_values(short_val1,-23)
FAIL: gdb.base/callfuncs.exp: p t_int_values(0,0)
FAIL: gdb.base/callfuncs.exp: p t_int_values(87,-26)
FAIL: gdb.base/callfuncs.exp: p t_int_values(int_val1,int_val2)
FAIL: gdb.base/callfuncs.exp: p t_int_values(87,int_val2)
FAIL: gdb.base/callfuncs.exp: p t_int_values(int_val1,-26)
FAIL: gdb.base/callfuncs.exp: p t_long_values(0,0)
FAIL: gdb.base/callfuncs.exp: p t_long_values(789,-321)
FAIL: gdb.base/callfuncs.exp: p t_long_values(long_val1,long_val2)
FAIL: gdb.base/callfuncs.exp: p t_long_values(789,long_val2)
FAIL: gdb.base/callfuncs.exp: p t_long_values(long_val1,-321)
FAIL: gdb.base/callfuncs.exp: p t_float_values(0.0,0.0)
FAIL: gdb.base/callfuncs.exp: p t_float_values(3.14159,-2.3765)
FAIL: gdb.base/callfuncs.exp: p t_float_values(float_val1,float_val2)
FAIL: gdb.base/callfuncs.exp: p t_float_values(3.14159,float_val2)
FAIL: gdb.base/callfuncs.exp: p t_float_values(float_val1,-2.3765)
FAIL: gdb.base/callfuncs.exp: p t_float_values2(0.0,0.0)
FAIL: gdb.base/callfuncs.exp: p t_float_values2(3.14159,float_val2)
FAIL: gdb.base/callfuncs.exp: p t_small_values(1,2,3,4,5,6,7,8,9,10)
FAIL: gdb.base/callfuncs.exp: p t_double_values(0.0,0.0)
FAIL: gdb.base/callfuncs.exp: p t_double_values(45.654,-67.66)
FAIL: gdb.base/callfuncs.exp: p t_double_values(double_val1,double_val2)
FAIL: gdb.base/callfuncs.exp: p t_double_values(45.654,double_val2)
FAIL: gdb.base/callfuncs.exp: p t_double_values(double_val1,-67.66)
FAIL: gdb.base/callfuncs.exp: p t_string_values(string_val2,string_val1)
FAIL: gdb.base/callfuncs.exp: p t_string_values(string_val1,string_val2)
FAIL: gdb.base/callfuncs.exp: p t_string_values("string 1","string 2")
FAIL: gdb.base/callfuncs.exp: p t_string_values("string 1",string_val2)
FAIL: gdb.base/callfuncs.exp: p t_string_values(string_val1,"string 2")
FAIL: gdb.base/callfuncs.exp: p t_char_array_values(char_array_val2,char_array_val1)
FAIL: gdb.base/callfuncs.exp: p t_char_array_values(char_array_val1,char_array_val2)
FAIL: gdb.base/callfuncs.exp: p t_char_array_values("carray 1","carray 2")
FAIL: gdb.base/callfuncs.exp: p t_char_array_values("carray 1",char_array_val2)
FAIL: gdb.base/callfuncs.exp: p t_char_array_values(char_array_val1,"carray 2")
FAIL: gdb.base/callfuncs.exp: p doubleit(4)
FAIL: gdb.base/callfuncs.exp: p add(4,5)
FAIL: gdb.base/callfuncs.exp: p t_func_values(func_val2,func_val1)
FAIL: gdb.base/callfuncs.exp: p t_func_values(func_val1,func_val2)
FAIL: gdb.base/callfuncs.exp: p t_call_add(func_val1,3,4)
FAIL: gdb.base/callfuncs.exp: p t_enum_value1(enumval1)
FAIL: gdb.base/callfuncs.exp: p t_enum_value1(enum_val1)
FAIL: gdb.base/callfuncs.exp: p t_enum_value1(enum_val2)
FAIL: gdb.base/callfuncs.exp: p t_enum_value2(enumval2)
FAIL: gdb.base/callfuncs.exp: p t_enum_value2(enum_val2)
FAIL: gdb.base/callfuncs.exp: p t_enum_value2(enum_val1)
FAIL: gdb.base/callfuncs.exp: p sum_args(1,{2})
FAIL: gdb.base/callfuncs.exp: p sum_args(2,{2,3})
FAIL: gdb.base/callfuncs.exp: p sum_args(3,{2,3,4})
FAIL: gdb.base/callfuncs.exp: p sum_args(4,{2,3,4,5})
FAIL: gdb.base/callfuncs.exp: p sum10 (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
FAIL: gdb.base/callfuncs.exp: p cmp10 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns char
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns short
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns int
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns long
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns float
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns double
FAIL: gdb.base/callfuncs.exp: call inferior func with struct - returns char *
FAIL: gdb.base/callfuncs.exp: stop at breakpoint in call dummy function
FAIL: gdb.base/callfuncs.exp: bt after continuing from call dummy breakpoint
FAIL: gdb.base/callfuncs.exp: call function causing a breakpoint then do a finish
FAIL: gdb.base/callfuncs.exp: finish from call dummy breakpoint returns correct value
FAIL: gdb.base/callfuncs.exp: bt after finishing from call dummy breakpoint
FAIL: gdb.base/callfuncs.exp: call function causing a breakpoint and then do a return
FAIL: gdb.base/callfuncs.exp: back at main after return from call dummy breakpoint
FAIL: gdb.base/callfuncs.exp: stop at nested call level 1
FAIL: gdb.base/callfuncs.exp: backtrace at nested call level 1
FAIL: gdb.base/callfuncs.exp: stop at nested call level 2
FAIL: gdb.base/callfuncs.exp: backtrace at nested call level 2
FAIL: gdb.base/callfuncs.exp: stop at nested call level 3
FAIL: gdb.base/callfuncs.exp: backtrace at nested call level 3
FAIL: gdb.base/callfuncs.exp: stop at nested call level 4
FAIL: gdb.base/callfuncs.exp: backtrace at nested call level 4
FAIL: gdb.base/callfuncs.exp: Finish from nested call level 4
FAIL: gdb.base/callfuncs.exp: backtrace after finish from nested call level 4
FAIL: gdb.base/callfuncs.exp: Finish from nested call level 3
FAIL: gdb.base/callfuncs.exp: backtrace after finish from nested call level 3
FAIL: gdb.base/callfuncs.exp: Finish from nested call level 2
FAIL: gdb.base/callfuncs.exp: backtrace after finish from nested call level 2
FAIL: gdb.base/callfuncs.exp: Finish from nested call level 1
FAIL: gdb.base/callfuncs.exp: backtrace after finish from nested call level 1
FAIL: gdb.base/callfuncs.exp: nested call dummies preserve register contents
FAIL: gdb.base/charset.exp: try printing '\a' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\a' in IBM1047
FAIL: gdb.base/charset.exp: try printing '\b' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\b' in IBM1047
FAIL: gdb.base/charset.exp: check value of "\b" in IBM1047
FAIL: gdb.base/charset.exp: try printing '\f' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\f' in IBM1047
FAIL: gdb.base/charset.exp: check value of "\f" in IBM1047
FAIL: gdb.base/charset.exp: try printing '\n' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\n' in IBM1047
FAIL: gdb.base/charset.exp: check value of "\n" in IBM1047
FAIL: gdb.base/charset.exp: try printing '\r' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\r' in IBM1047
FAIL: gdb.base/charset.exp: check value of "\r" in IBM1047
FAIL: gdb.base/charset.exp: try printing '\t' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\t' in IBM1047
FAIL: gdb.base/charset.exp: check value of "\t" in IBM1047
FAIL: gdb.base/charset.exp: try printing '\v' in IBM1047
FAIL: gdb.base/charset.exp: check value of '\v' in IBM1047
FAIL: gdb.base/charset.exp: check value of "\v" in IBM1047
FAIL: gdb.base/commands.exp: continue with watch
FAIL: gdb.base/completion.exp: (timeout) complete (2) 'p 'a'
FAIL: gdb.base/completion.exp: (timeout) complete 'p no_var_named_this-a'
FAIL: gdb.base/completion.exp: (timeout) complete (2) 'p no_var_named_this-a'
FAIL: gdb.base/completion.exp: (timeout) complete (2) 'p no_var_named_this-'
FAIL: gdb.base/completion.exp: cd to ${srcdir}
FAIL: gdb.base/completion.exp: complete-command 'file ./gdb.base/compl'
FAIL: gdb.base/completion.exp: (timeout) complete 'file ./gdb.base/complet'
FAIL: gdb.base/completion.exp: (timeout) complete 'info func marke'
FAIL: gdb.base/completion.exp: (timeout) complete 'set follow-fork-mode'
FAIL: gdb.base/condbreak.exp: breakpoint info
FAIL: gdb.base/corefile.exp: args: -core=corefile
FAIL: gdb.base/corefile.exp: args: execfile -core=corefile
FAIL: gdb.base/corefile.exp: core-file command
FAIL: gdb.base/corefile.exp: print func2::coremaker_local
FAIL: gdb.base/corefile.exp: backtrace in corefile.exp
FAIL: gdb.base/corefile.exp: up in corefile.exp
FAIL: gdb.base/corefile.exp: up in corefile.exp (reinit)
FAIL: gdb.base/dbx.exp: stop in main
FAIL: gdb.base/dbx.exp: status
FAIL: gdb.base/define.exp: use user command: nextwhere
FAIL: gdb.base/define.exp: use hook-stop command
FAIL: gdb.base/dump.exp: element 2 not changed - 1
FAIL: gdb.base/dump.exp: element 4 not changed - 1
FAIL: gdb.base/dump.exp: element 2 not changed - 2
FAIL: gdb.base/dump.exp: element 4 not changed - 2
FAIL: gdb.base/dump.exp: element 2 not changed - 3
FAIL: gdb.base/dump.exp: element 4 not changed - 3
FAIL: gdb.base/dump.exp: element 2 not changed - 4
FAIL: gdb.base/dump.exp: element 4 not changed - 4
FAIL: gdb.base/dump.exp: element 2 not changed, == 4
FAIL: gdb.base/dump.exp: element 4 not changed, == 4
FAIL: gdb.base/foll-exec.exp: step to exec call
FAIL: gdb.base/foll-exec.exp: step through execlp call
FAIL: gdb.base/foll-exec.exp: step after execlp call
FAIL: gdb.base/foll-exec.exp: print execd-program/global_i (after execlp)
FAIL: gdb.base/foll-exec.exp: print execd-program/local_j (after execlp)
FAIL: gdb.base/foll-exec.exp: loading symbols (timeout)
FAIL: gdb.base/foll-fork.exp: default parent follow, no catchpoints
FAIL: gdb.base/foll-fork.exp: explicit parent follow, no catchpoints
FAIL: gdb.base/foll-fork.exp: explicit child follow, no catchpoints
FAIL: gdb.base/foll-fork.exp: set follow child, hit tbreak
FAIL: gdb.base/foll-fork.exp: running to main in runto (timeout)
FAIL: gdb.base/gdb1555.exp: Step into shared lib function
FAIL: gdb.base/gdb1555.exp: Next while in a shared lib function
FAIL: gdb.base/help.exp: help breakpoints
FAIL: gdb.base/huge.exp: print a very large data object (timeout)
FAIL: gdb.base/interrupt.exp: call function after waking it
FAIL: gdb.base/interrupt.exp: call function a second time
FAIL: gdb.base/interrupt.exp: send end of file
FAIL: gdb.base/langs.exp: break on nonexistent function in langs.exp
FAIL: gdb.base/long_long.exp: p/f *(long long *)ll
FAIL: gdb.base/long_long.exp: x/2gf g
FAIL: gdb.base/maint.exp: maint print psymbols
FAIL: gdb.base/maint.exp: maint print msymbols
FAIL: gdb.base/maint.exp: maint print symbols
FAIL: gdb.base/maint.exp: maint info sections .text
FAIL: gdb.base/maint.exp: maint info sections CODE
FAIL: gdb.base/maint.exp: maint info sections DATA
FAIL: gdb.base/maint.exp: maint info breakpoints
FAIL: gdb.base/nodebug.exp: (timeout) p/c array_index
FAIL: gdb.base/pending.exp: set pending breakpoint
FAIL: gdb.base/pending.exp: single pending breakpoint info
FAIL: gdb.base/pending.exp: breakpoint function
FAIL: gdb.base/pending.exp: pending plus real breakpoint info
FAIL: gdb.base/pending.exp: Don't set pending breakpoint
FAIL: gdb.base/pending.exp: pending plus condition
FAIL: gdb.base/pending.exp: pending disabled
FAIL: gdb.base/pending.exp: pending disabled plus commands
FAIL: gdb.base/pending.exp: Set pending breakpoint 2
FAIL: gdb.base/pending.exp: multiple pending breakpoints
FAIL: gdb.base/pending.exp: Set pending breakpoint 3
FAIL: gdb.base/pending.exp: multiple pending breakpoints 2
FAIL: gdb.base/pending.exp: running to main
FAIL: gdb.base/pending.exp: re-enabling pending breakpoint that can resolve instantly
FAIL: gdb.base/pending.exp: continue to resolved breakpoint 2 (the program is no longer running)
FAIL: gdb.base/pending.exp: continue to resolved breakpoint 1 (the program is no longer running)
FAIL: gdb.base/pending.exp: continue to resolved breakpoint 3 (the program is no longer running)
FAIL: gdb.base/pending.exp: set imaginary pending breakpoint
FAIL: gdb.base/pending.exp: verify pending breakpoint after restart
FAIL: gdb.base/pointers.exp: continuing after dummy()
FAIL: gdb.base/pointers.exp: print object pointed to
FAIL: gdb.base/pointers.exp: print object pointed to
FAIL: gdb.base/pointers.exp: pointer assignment and increment
FAIL: gdb.base/pointers.exp: pointer decrement and assignment
FAIL: gdb.base/pointers.exp: print array element through pointer
FAIL: gdb.base/pointers.exp: print array element through pointer
FAIL: gdb.base/pointers.exp: print through ptr to ptr
FAIL: gdb.base/printcmds.exp: p ctable1[27]
FAIL: gdb.base/printcmds.exp: p &ctable1[3*8]
FAIL: gdb.base/printcmds.exp: p "a string"
FAIL: gdb.base/printcmds.exp: p "embedded \000 null"
FAIL: gdb.base/printcmds.exp: p "abcd"[2]
FAIL: gdb.base/printcmds.exp: p sizeof ("abcdef")
FAIL: gdb.base/printcmds.exp: ptype "foo"
FAIL: gdb.base/printcmds.exp: p *"foo"
FAIL: gdb.base/printcmds.exp: ptype *"foo"
FAIL: gdb.base/printcmds.exp: p &*"foo"
FAIL: gdb.base/printcmds.exp: p (char *)"foo"
FAIL: gdb.base/printcmds.exp: print {'a','b','c'}
FAIL: gdb.base/printcmds.exp: print {0,1,2}
FAIL: gdb.base/printcmds.exp: print {(long)0,(long)1,(long)2}
FAIL: gdb.base/printcmds.exp: print {{0,1,2},{3,4,5}}
FAIL: gdb.base/printcmds.exp: print {4,5,6}[2]
FAIL: gdb.base/printcmds.exp: print *&{4,5,6}[1]
FAIL: gdb.base/ptype.exp: ptype "abc"
FAIL: gdb.base/ptype.exp: ptype {'a','b','c'}
FAIL: gdb.base/ptype.exp: ptype {0,1,2}
FAIL: gdb.base/ptype.exp: ptype {(long)0,(long)1,(long)2}
FAIL: gdb.base/ptype.exp: ptype {(float)0,(float)1,(float)2}
FAIL: gdb.base/ptype.exp: ptype {{0,1,2},{3,4,5}}
FAIL: gdb.base/ptype.exp: ptype {4,5,6}[2]
FAIL: gdb.base/ptype.exp: ptype *&{4,5,6}[1]
FAIL: gdb.base/recurse.exp: continue to recurse (a = 9)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 8)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 7)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 6)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 5)
FAIL: gdb.base/recurse.exp: continue to second instance watchpoint, first time
FAIL: gdb.base/recurse.exp: continue to recurse (a = 4)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 3)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 2)
FAIL: gdb.base/recurse.exp: continue to recurse (a = 1)
FAIL: gdb.base/recurse.exp: continue to second instance watchpoint, second time
FAIL: gdb.base/recurse.exp: second instance watchpoint deleted when leaving scope
FAIL: gdb.base/recurse.exp: continue to first instance watchpoint, second time
FAIL: gdb.base/recurse.exp: first instance watchpoint deleted when leaving scope (the program is no longer running)
FAIL: gdb.base/relocate.exp: static variables have different addresses
FAIL: gdb.base/relocate.exp: functions have different addresses
FAIL: gdb.base/relocate.exp: add-symbol-file relocate.o $offset
FAIL: gdb.base/relocate.exp: function foo has a different address
FAIL: gdb.base/scope.exp: next over init0() in main
FAIL: gdb.base/scope.exp: print filelocal_bss
FAIL: gdb.base/scope.exp: print 'scope0.c'::filelocal_bss in test_at_main
FAIL: gdb.base/scope.exp: print 'scope1.c'::filelocal_bss
FAIL: gdb.base/scope.exp: print localval, outer scope
FAIL: gdb.base/shlib-call.exp: next to shr1
FAIL: gdb.base/shlib-call.exp: print  g
FAIL: gdb.base/shlib-call.exp: next over shr1
FAIL: gdb.base/shlib-call.exp: print  g
FAIL: gdb.base/shlib-call.exp: print shr1(1)
FAIL: gdb.base/shlib-call.exp: print shr1(g)
FAIL: gdb.base/shlib-call.exp: print shr1(1) 2nd time
FAIL: gdb.base/shlib-call.exp: print  mainshr1(1) from main
FAIL: gdb.base/sigall.exp: get signal ALRM
FAIL: gdb.base/sigall.exp: get signal URG
FAIL: gdb.base/sigall.exp: get signal CHLD
FAIL: gdb.base/sigall.exp: get signal IO
FAIL: gdb.base/sigall.exp: get signal VTALRM
FAIL: gdb.base/sigall.exp: get signal PROF
FAIL: gdb.base/sigall.exp: get signal WINCH
FAIL: gdb.base/sigbpt.exp: stepi; stepi out of handler
FAIL: gdb.base/sigbpt.exp: stepi bp before segv; stepi out of handler
FAIL: gdb.base/sigbpt.exp: stepi bp at segv; stepi out of handler
FAIL: gdb.base/sigbpt.exp: stepi bp before and at segv; stepi out of handler
FAIL: gdb.base/sigbpt.exp: cont; continue to breakpoint at fault
FAIL: gdb.base/sigbpt.exp: cont; stepi fault
FAIL: gdb.base/sigbpt.exp: cont bp after segv; continue to breakpoint at fault
FAIL: gdb.base/sigbpt.exp: cont bp after segv; stepi fault
FAIL: gdb.base/sigbpt.exp: cont bp before and after segv; continue to breakpoint at fault
FAIL: gdb.base/sigbpt.exp: cont bp before and after segv; stepi fault
FAIL: gdb.base/siginfo.exp: step out of handler
FAIL: gdb.base/signals.exp: next over signal call; SIGALRM handler
FAIL: gdb.base/signals.exp: next over signal call; SIGUSR1 handler
FAIL: gdb.base/signals.exp: next over 1st alarm
FAIL: gdb.base/signals.exp: next over first count and SIGALRM to 2nd alarm
FAIL: gdb.base/signals.exp: next over 2nd alarm
FAIL: gdb.base/signals.exp: extra continue to program exit (the program exited)
FAIL: gdb.base/signals.exp: next to signal
FAIL: gdb.base/signals.exp: next to alarm #1
FAIL: gdb.base/signals.exp: next to ++count #1
FAIL: gdb.base/signals.exp: p func1 () #1
FAIL: gdb.base/signals.exp: p count #1
FAIL: gdb.base/signals.exp: next to alarm #2 (the program exited)
FAIL: gdb.base/signals.exp: next to ++count #2 (the program is no longer running)
FAIL: gdb.base/signals.exp: p func1 () #2
FAIL: gdb.base/signals.exp: backtrace from handler when calling func1
FAIL: gdb.base/signals.exp: continue (the program is no longer running)
FAIL: gdb.base/signals.exp: p count #2
FAIL: gdb.base/signals.exp: signal without arguments disallowed (the program is no longer running)
FAIL: gdb.base/signals.exp: sent signal 5 (the program is no longer running)
FAIL: gdb.base/signull.exp: code; backtrace from SIGSEGV
FAIL: gdb.base/signull.exp: code; backtrace from keeper through SIGSEGV
FAIL: gdb.base/sigstep.exp: step out of handler
FAIL: gdb.base/sigstep.exp: stepi into signal trampoline
FAIL: gdb.base/sigstep.exp: stepi out of signal trampoline
FAIL: gdb.base/sigstep.exp: next out of handler
FAIL: gdb.base/sigstep.exp: nexti into signal trampoline
FAIL: gdb.base/sigstep.exp: nexti out of signal trampoline
FAIL: gdb.base/sigstep.exp: finish out of signal trampoline
FAIL: gdb.base/sigstep.exp: return out of signal trampoline
FAIL: gdb.base/sizeof.exp: check sizeof "char"
FAIL: gdb.base/sizeof.exp: check sizeof "short"
FAIL: gdb.base/sizeof.exp: check sizeof "int"
FAIL: gdb.base/sizeof.exp: check sizeof "long"
FAIL: gdb.base/sizeof.exp: check sizeof "long long"
FAIL: gdb.base/sizeof.exp: check sizeof "void *"
FAIL: gdb.base/sizeof.exp: check sizeof "void (*)(void)"
FAIL: gdb.base/sizeof.exp: check sizeof "float"
FAIL: gdb.base/sizeof.exp: check sizeof "double"
FAIL: gdb.base/sizeof.exp: check sizeof "long double"
FAIL: gdb.base/sizeof.exp: check valueof "'\\377'"
FAIL: gdb.base/sizeof.exp: check valueof "(int) (char) -1"
FAIL: gdb.base/sizeof.exp: check valueof "(int) (signed char) -1"
FAIL: gdb.base/sizeof.exp: check valueof "(int) (unsigned char) -1"
FAIL: gdb.base/so-impl-ld.exp: step over solib call
FAIL: gdb.base/so-impl-ld.exp: step into solib call
FAIL: gdb.base/so-impl-ld.exp: step out of solib call
FAIL: gdb.base/solib.exp: caught generic solib load
FAIL: gdb.base/solib.exp: continue after generic catch load
FAIL: gdb.base/solib.exp: caught generic solib unload
FAIL: gdb.base/solib.exp: caught specific solib load
FAIL: gdb.base/solib.exp: caught specific solib unload
FAIL: gdb.base/solib.exp: specific catch load doesn't trigger inappropriately
FAIL: gdb.base/solib.exp: specific catch unload doesn't trigger inappropriately
FAIL: gdb.base/solib.exp: break on main
FAIL: gdb.base/solib.exp: hit breakpoint at main
FAIL: gdb.base/solib.exp: break on indirect call
FAIL: gdb.base/solib.exp: continue to break on indirect call (the program is no longer running)
FAIL: gdb.base/solib.exp: step into indirect call from a shared library (the program is no longer running)
FAIL: gdb.base/step-test.exp: next 1
FAIL: gdb.base/step-test.exp: step 1
FAIL: gdb.base/step-test.exp: next 2
FAIL: gdb.base/step-test.exp: step 3
FAIL: gdb.base/step-test.exp: next 3
FAIL: gdb.base/step-test.exp: next over
FAIL: gdb.base/step-test.exp: step out
FAIL: gdb.base/step-test.exp: stepi to next line
FAIL: gdb.base/step-test.exp: stepi: finish call
FAIL: gdb.base/step-test.exp: nexti over function
FAIL: gdb.base/store.exp: var charest l; print incremented l, expecting 2 ..002.
FAIL: gdb.base/store.exp: var short l; print incremented l, expecting 2
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 6 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 6 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 7 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 7 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 8 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 8 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 9 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 9 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 10 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 10 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 11 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 11 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 12 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 12 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 13 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 13 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 14 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 14 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 15 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 15 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 16 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 16 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 17 structs-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 17 structs-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-ti
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-ti
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-ti
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-ti
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-ti
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-ti
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-tl
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-tl
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tl
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tl
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tl
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tl
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-tll
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-tll
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tll
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tll
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-tf
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-tf
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tf
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tf
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tf
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tf
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-td
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-td
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-td
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-td
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 1 structs-tld
FAIL: gdb.base/structs.exp: p/c L<n>; call 1 structs-tld
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tld
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tld
FAIL: gdb.base/structs.exp: zed L<n> for return; return 1 structs-tld
FAIL: gdb.base/structs.exp: zed L<n> for finish; return 1 structs-tld
FAIL: gdb.base/structs.exp: value foo<n> finished; return 1 structs-tld
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 6 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 6 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 7 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 7 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 8 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 8 structs-ts-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 6 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 6 structs-ti-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 6 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 6 structs-tl-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tll-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tll-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 6 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 6 structs-tf-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-td-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-td-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tld-tc
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tld-tc
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 5 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 5 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 6 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c L<n>; call 6 structs-tc-ts
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-ti
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-ti
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tc-ti
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tc-ti
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tc-ti
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tc-ti
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-tl
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-tl
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tc-tl
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tc-tl
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tc-tl
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tc-tl
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-tll
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-tll
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-tf
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-tf
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 3 structs-tc-tf (timeout)
FAIL: gdb.base/structs.exp: call Fun<n>(foo<n>); call 3 structs-tc-tf (timeout)
FAIL: gdb.base/structs.exp: p/c L<n>; call 3 structs-tc-tf (timeout)
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 4 structs-tc-tf (timeout)
FAIL: gdb.base/structs.exp: call Fun<n>(foo<n>); call 4 structs-tc-tf (timeout)
FAIL: gdb.base/structs.exp: p/c L<n>; call 4 structs-tc-tf (timeout)
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-td
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-td
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tc-tld
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tc-tld
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-td-tf
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-td-tf
FAIL: gdb.base/structs.exp: p/c fun<n>(); call 2 structs-tf-td
FAIL: gdb.base/structs.exp: p/c L<n>; call 2 structs-tf-td
FAIL: gdb.base/structs2.exp: structs2 sanity check (PRMS 13536)
FAIL: gdb.base/term.exp: info terminal at breakpoint
FAIL: gdb.base/twice.exp: step
FAIL: gdb.base/varargs.exp: print find_max1(5,1,2,3,4,5)
FAIL: gdb.base/varargs.exp: print find_max1(1,3)
FAIL: gdb.base/varargs.exp: print find_max1(10,1,2,3,4,5,6,7,8,29,0)
FAIL: gdb.base/varargs.exp: print find_max2(3,1,2,3)
FAIL: gdb.base/varargs.exp: print find_max_double(5,1.0,17.0,2.0,3.0,4.0)
FAIL: gdb.base/watchpoint.exp: calling function with watchpoint enabled


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: ptrace(2) autoconf tests
       [not found] <no.id>
@ 2004-08-11  2:55 ` John David Anglin
  0 siblings, 0 replies; 17+ messages in thread
From: John David Anglin @ 2004-08-11  2:55 UTC (permalink / raw)
  To: John David Anglin; +Cc: brobecker, marcel, mec.gnu, kettenis, gdb

> The test FAILs up to that point are attached below.  I suspect that
> the ptrace change is ok but I will redo the build without the change.

I should add that the autoconf test output for ptrace looks ok.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2004-08-11  2:55 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-08-08 21:00 ptrace(2) autoconf tests Mark Kettenis
2004-08-08 21:42 ` Michael Chastain
2004-08-09  0:46   ` Mark Kettenis
2004-08-09  7:19     ` Michael Chastain
2004-08-09 13:09     ` Andrew Cagney
2004-08-09 15:34       ` Mark Kettenis
2004-08-09 15:53         ` Andrew Cagney
2004-08-09  5:37 ` Joel Brobecker
2004-08-09 21:52   ` Mark Kettenis
2004-08-10  5:49     ` Joel Brobecker
2004-08-10  6:56       ` Michael Chastain
2004-08-10  7:20         ` Marcel Moolenaar
2004-08-10 14:45           ` John David Anglin
2004-08-10 18:52             ` Joel Brobecker
2004-08-11  2:16               ` John David Anglin
2004-08-10 19:03     ` Joel Brobecker
     [not found] <no.id>
2004-08-11  2:55 ` John David Anglin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox