This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: g++-mike-eh8-C test failure


The problem is understood.  The C++ testsuite needs to use the "-E" ld
option under hpux 10.20 to export all symbols defined by the program to
the shared libraries.  When this is done, the test runs successfully.

> 
> I have examined the failure of g++-mike-eh8-C under hpux 10.20.  Gcc
> was built with --enable-shared and CFLAGS="-g -O3".
> 
> The test dies with a segmentation fault in __eh_rtime_match:
> 
> int
> __eh_rtime_match (void *rtime)
> {
>   void *info;
>   __eh_matcher matcher;
>   void *ret;
> 
>   info = *(__get_eh_info ());
>   matcher = ((__eh_info *)info)->match_function;
>   if (! matcher)
>     {
> #ifndef inhibit_libc
>       fprintf (stderr, "Internal Compiler Bug: No runtime type matcher.");
> #endif
>       return 0;
>     }
>   ret = (*matcher) (info, rtime, (void *)0);
>   return (ret != NULL);
> }
> 
> The segmentation fault occurs because the pointer info returned by
> __get_eh_info is NULL.  Should there be a test similar to the one
> for matcher?  Since the test does not fail when linked with "-static",
> it looks like the failure occurs because the _eh_info structure is
> not being properly setup with the shared version of libstdc++.
> 
> -- 
> J. David Anglin                                  dave.anglin@nrc.ca
> National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)
> 


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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]