hg: jdk7/build/langtools: 6829575: 100028: Debug information is incomplete or missing

Andrew Haley aph at redhat.com
Fri Apr 17 17:38:46 UTC 2009


Andrew Haley wrote:
> Jonathan Gibbons wrote:
>> 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.
> 
> OK.  I'm surprised, but I'll pull out that hunk and give it a try.

I tried removing that hunk entirely for langtools, and it doesn't work: I
get missing local variable data.

I'm going to change langtools/jaxp/jaxws to

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

and retest.

Andrew.




More information about the build-dev mailing list