Re: [eigen] MSVC debug tools

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


On Mon, Dec 21, 2009 at 5:17 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
2009/12/21 Björn Piltz <bjornpiltz@xxxxxxxxxxxxxx>:

> Add a to greedy one, and suddenly the debugger
> will act very unpredictably. Also, different developers have different
> needs. For example I thought about adding "operator::new" since I almost
> always want to step directly into the ctor and not into new(), but with
> Eigen doing all this magic with overloaded new, aligned and unaligned
> mallocs, sometimes you do want to know which function is actually called.
> So the reason I started this thread was to find out which set of functions
> to be included if we add this file to the Wiki.

The example you just pointed out shows that there isn't a
one-size-fits-all set of functions to avoid.

As you noted, the meta selectors are among the functions one is the
least likely in wanting to debug into, but there are many of them, if
we added them all we already would have a big .reg file, that would be
aa lot of effort, and that would still cover a small fraction of what
a given person wants to avoid.

> We could also just document the feature and give some examples and leave it
> to the developer to make the changes.

Yes, I agree with that! However, it is always interesting to provide a
minimalistic eigen.reg with a few functions that come by very
frequently. I agree that ei_assign_selector::run is such a function.
There also is derived() and const_cast_derived() in MatrixBase,
_check_template_params() in Matrix...

This whole topic is why I actually don't use this feature at all. You never know which functions you would want to be able to debug into. E.g. the ei_assign_selector::run() is something I would not add to my list of functions to ignore - during some debugging it was important for me to see with which template parameters the function was instantiated. It simply depends on which level you want to debug and thus I agree with Benoit that at most we need a tiny example in the repository. I personally would prefer the dev-corner...

- Hauke



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/