This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: libstdc++, -m64 and can't find atom for N_GSYM stabs
- From: howarth at bromo dot msbb dot uc dot edu (Jack Howarth)
- To: echristo at apple dot com, howarth at bromo dot msbb dot uc dot edu
- Cc: gcc at gcc dot gnu dot org, geoffk at apple dot com, mrs at apple dot com
- Date: Fri, 25 Aug 2006 21:20:53 -0400 (EDT)
- Subject: Re: libstdc++, -m64 and can't find atom for N_GSYM stabs
Eric,
So far the smallest test case I can come up with reproduces the
"can't find atom for N_GSYM stabs" ld64 linker warning in Darwin is...
#include <testsuite_hooks.h>
#include <testsuite_allocator.h>
// uneq_allocator as a non-empty allocator.
void
test01()
{
bool test __attribute__((unused)) = true;
using namespace std;
typedef __gnu_test::uneq_allocator<char> my_alloc;
typedef deque<char, my_alloc> my_deque;
my_deque::size_type size01;
my_alloc alloc01(1);
my_deque deq01(alloc01);
}
int main()
{
test01();
return 0;
}
...using the testsuite_hooks.h and testsuite_allocator.h headers from
gcc/libstdc++-v3/testsuite/util. Compiling this with...
g++-4 -O3 -g -m64 -I. test.cc
can't find atom for N_GSYM stabs alloc_map:G(0,3) in /var/tmp//ccPQUmeQ.o
...produces the warning. It's easier to reproduce in gfortran since
all you need is to declare a COMMON block.
Jack