need help calling c++ function of type std::vector

i can call the size function, but not the operator[] function - another vector member variable in the same class does not have this problem - i am confused why i am having trouble with this one.

(dbx) print m_SubNodes.size()

m_SubNodes.size() = 1U

(dbx) print m_SubNodes.operator[](0)

dbx: vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> ;,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounter Locker> > >::operator[] is missing in this scope (never defined or an inlined function)

(dbx) whatis -t vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLeqDBAlia sNode,ncbi::CObjectCounterLocker>,std::allocator<ncbi::CRef><ncbi::C Ser>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectC ounterLockerDBAliasNode,ncbi::CObjectCounterLocker> > >

class std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > > {

protected:

void std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::__insert_aux(std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi: :CObjectCounterLocker>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasN ode,ncbi::CObjectCounterLocker> > >::iterator position, const class ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> &x);

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::__insert_aux(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>*,unsigned,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::__insert_aux2(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLoc ker>*,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*); /* never defined or unused inline function */

void std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::__destroy(std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CO bjectCounterLocker>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode ,ncbi::CObjectCounterLocker> > >::iterator start, std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::iterator finish);

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::__initn(unsigned,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&); /* never defined or unused inline function */

void std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::__init();

public:

explicit std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::vector(const class std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterL ocker> > &alloc);

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::vector(unsigned); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::vector(unsigned,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&,const std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterL ocker> >&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::vector(const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,const std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterL ocker> >&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::vector(const std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::~vector();

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::operator=(const std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::assign(const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::assign(unsigned,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::get_allocator()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::iterator std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::begin();

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::const_iterator std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::begin() const;

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::iterator std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::end();

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::const_iterator std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::end() const;

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::rbegin(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::rbegin()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::rend(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::rend()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::size_type std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::size() const;

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::max_size()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::resize(unsigned); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::resize(unsigned,ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterL ocker>); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::capacity()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::empty()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::reserve(unsigned); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::operator[](unsigned); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::operator[](unsigned)const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::at(unsigned); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::at(unsigned)const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::front(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::front()const; /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::back(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::back()const; /* never defined or unused inline function */

void std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::push_back(const class ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> &x);

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::pop_back(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::insert(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> *,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::insert(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> *,unsigned,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::insert(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> *,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::erase(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>* ); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::erase(ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>* ,ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::swap(std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObject CounterLocker>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi ::CObjectCounterLocker> > >&); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::clear(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::allocation_size(); /* never defined or unused inline function */

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::allocation_size(unsigned); /* never defined or unused inline function */

protected:

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::size_type __buffer_size;

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::iterator __start;

std::vector<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLock er>,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCo unterLocker> > >::iterator __finish;

class __rwstd::__rw_basis<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCou nterLocker>*,std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi:: CObjectCounterLocker> > > __end_of_storage;

typedef unsigned size_type;

typedef class ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> *iterator;

typedef class std::allocator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterL ocker> > allocator_type;

typedef const class ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> *const_iterator;

typedef struct reverse_iterator<ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounte rLocker>*,std::random_access_iterator_tag,ncbi::CRef<ncbi::CSeqDBAliasNode ,ncbi::CObjectCounterLocker>,ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjec tCounterLocker>&,ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounter Locker>*,int> reverse_iterator;

typedef struct reverse_iterator<const ncbi::CRef><ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,std::ra ndom_access_iterator_tag,ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounte rLocker>,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>&,const ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker>*,int> const_reverse_iterator;

reference ;

typedef const class ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> &const_reference;

typedef class std::allocator_interface<std::allocator><ncbi::CRef><ncbi::CSeqD BAliasNode,ncbi::CObjectCounterLocker> >,ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> > __value_alloc_type;

typedef class ncbi::CRef<ncbi::CSeqDBAliasNode,ncbi::CObjectCounterLocker> value_type;

};

(dbx)

[20285 byte] By [autohanda] at [2007-11-27 8:20:05]
# 1

Well, dbx is telling you what the problem might be: the function was not generated, or was expanded inline.

If the function template instance was not called in the program, it was not generated, and dbx can't call it.

If the function was called, but the calling location was not compiled with -g, the call might have been generated inline, and there is no location for dbx to call.

clamage45a at 2007-7-12 20:08:21 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 2

template, code not generated - ok, makes sense. help - what is a reasonable dbx strategy around this? i could write a wrapper that i pass the vector variable into that could delegate to the vector variable and implement all the function calls in the template - then i could use LD_PRELOAD to get the wrapper loaded - but that means stopping, coding, rerunning every time i run into this, is there a better strategy? beside tears.

autohanda at 2007-7-12 20:08:21 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 3

First make sure the problem is not that the function was emitted only inline. Compile with -g at least one module where the template instance is used.

If the problem really is that you are trying to invoke an instance that was not generated in the program, you can simplify the process you outlined by using dbx Fix-and-Continue.

Within dbx, edit a source file to create an instance of the function you want to call, then click fix-and-continue. Without exiting dbx or having to restart the debugging session, the new instance will be available for you to call.

clamage45a at 2007-7-12 20:08:21 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 4
thanks, buddy, for taking the time to help me out - it gives me a place to start and i'll give it a try.
autohanda at 2007-7-12 20:08:21 > top of Java-index,Development Tools,Solaris and Linux Development Tools...
# 5
am i be having the same problem here: http://forum.java.sun.com/thread.jspa?threadID=5174186string is a template - the constructor is not called in the routine - and therefore the function is not available to the debugger?
autohanda at 2007-7-12 20:08:21 > top of Java-index,Development Tools,Solaris and Linux Development Tools...