On Apr 17, 2009, at 9:11 AM, Andrew Haley wrote:

Jonathan Gibbons wrote:

It's one thing to be enabling more debug information if you set flags,
and/or making it more consistent, but I'm not happy with you removing
debug information by default. At least from reading the changeset diff, it seems there is no way to get what was previously the default amount
of debug info, which is source,lines (but not vars).

Source and lines are good to get useful stack traces in the face of
exceptions, even if var information is not present. var information is
typically not required in product builds.

Oh dear.  I discussed this at considerable length with Kelly, whose
suggestion it was to change

ifeq ($(DEBUG_CLASSFILES), true)
 ANT_OPTIONS += -Djavac.debug=true
 ANT_OPTIONS += -Djavac.debuglevel=source,lines,vars
endif

to be

ifeq ($(DEBUG_CLASSFILES), true)
 ANT_OPTIONS += -Djavac.debug=true
 ANT_OPTIONS += -Djavac.debuglevel=source,lines,vars
else
 ANT_OPTIONS += -Djavac.debug=false
 ANT_OPTIONS += -Djavac.debuglevel=
endif

It was not my intention to break anything that already existed, but
simply to add debuginfo where it was disabled.

Can you please point me to exactly which hunks of my diff are problematic?
The only place I can see that might be a problem is javac.

If your intention was to ensure that debug info was added, then the changeset for langtools (which you summarise above) would not seem to be necessary,
because the old code honored setting DEBUG_CLASSFILES to true.  It is
the new "else" branch that disables debug info if DEBUG_CLASSFILES is
not set that is problematic.

I accept this changeset is part of an overall larger set of changesets across all repositories. What exactly were the goals? It seems to me it is arguably
desirable to have three settings (not two).
        All debugging on (source,lines,vars)
        Basic debugging on (source,lines)
        No debugging
There is arguably a fourth candidate for consideration, which is "local default" which allows the choice to be made on a more fine-grained (albeit inconsistent)
basis.

-- Jon




Thanks,
Andrew.

Reply via email to