Re: [Boost-bugs] [Boost C++ Libraries] #7093: Building "system" segfaults on AIX 6.1 / vacpp

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #7093: Building "system" segfaults on AIX 6.1 / vacpp
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-03-07 15:36:29


#7093: Building "system" segfaults on AIX 6.1 / vacpp
----------------------------------------------------+-----------------------
  Reporter: Martin Baute <solar@…> | Owner: vladimir_prus
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: build
   Version: Boost 1.50.0 | Severity: Regression
Resolution: | Keywords: aix
----------------------------------------------------+-----------------------

Comment (by steven_watanabe):

 Okay. I guess the next step is to start adding printfs.

 I would start with cmd_new in command.c.

 {{{
 #include <stdio.h>

 /* at the start of cmd_new */
 printf("printing targets: ");
 fflush(stdout);
 list_print(targets);
 printf("\n");
 printf("printing sources");
 fflush(stdout);
 list_print(sources);
 printf("\n");
 printf("printing shell");
 fflush(stdout);
 list_print(shell);
 printf("\n");
 fflush(stdout)

 }}}

 The possible results are:

 1. b2 runs without errors -- The problem is in cmd_new. Generate assembly
 so I can see what the compiler is doing.
 2. These printfs produce incomplete output because b2 crashes inside one
 of the calls to list_print. This indicates a problem in the caller. I'd
 need to know which list failed, and the values printed for the other
 lists.
 3. b2 crashes in the same place as before -- The problem is either in
 cmd_new or in list_copy. My guess would be cmd_new, but I'd like to see
 assembler dumps of both functions.

 I expect that (2) is the most likely. In this case, repeat this process
 in make.c (around line 1050 at the call to cmd_new. The important
 variables are nt, shell, ns, chunk, and start)

 Hmm. This actually looks a bit like a use-after-free error. I think I'd
 really like to see the assembler for list_copy. Also, does AIX have any
 tool like valgrind that you can use?

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/7093#comment:6>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:12 UTC