New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Sep 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug

Blocked on:
issue 640254

Blocking:
issue 636111



Sign in to add a comment

Strange highlights when debugging with clang on Windows

Project Member Reported by scottmg@chromium.org, Aug 9 2016 Back to list

Issue description

Strange highlight lines on source code (see attached) compared with a VS build.

Building with/at:

[414c42a...]d:\src\cr3\src>type out\debug\args.gn
is_debug = true
is_component_build = true
enable_nacl = false
is_chrome_branded = true
target_cpu = "x86"
win_console_app = true
symbol_level = 2
is_clang = true
 
debugging-highlights.png
21.6 KB View Download
Blocking: 636111

Comment 2 by r...@chromium.org, Aug 10 2016

I think this is related to column information. ClusterFuzz wanted column information in addition to line info in stack traces, and Microsoft explained how to add this information to the line table, so we added it. Microsoft never turned column info on in their own compiler because they didn't like the debugger user experience, which is what I think you're seeing.

Comment 3 by a...@chromium.org, Aug 11 2016

Components: Build

Comment 4 by r...@chromium.org, Aug 25 2016

Cc: amccarth@google.com

Comment 5 by amccarth@google.com, Aug 25 2016

Will momentarily be addressed by turning off column info by default for CodeView debug info (with an option to enable it which is useful for sanitizer builds).

Visual Studio really wants column ranges if there's any column info.  With only the partial column info that Clang records, the highlights are wonky.  I tried various ways of synthesizing a range, but all had drawbacks, so it's best to omit the column info altogether.

https://reviews.llvm.org/rL279765

Comment 6 by thakis@chromium.org, Aug 25 2016

Blockedon: 640254
Project Member

Comment 7 by bugdroid1@chromium.org, Aug 31 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a033f395bf2547cf4764f77cc9c86d08f3e22c23

commit a033f395bf2547cf4764f77cc9c86d08f3e22c23
Author: thakis <thakis@chromium.org>
Date: Wed Aug 31 05:16:14 2016

Roll clang 278861:280106.

* win: Members of base classes now should show up in debugger.
* win: Debugger shouldn't show funny highlights anymore due to
  debug info no longer including column information.  (we still
  force this on if sanitizers are used, mostly for clusterfuzz.
  maybe we want to make this toggleable independent of sanitizers
  at some point)
* win: -Wextern-initializer no longer warns on midl-generated code
* win: clang-cl now accepts /source-encoding:utf-8 and friends
  (utf-8 was the source enconding in clang-cl before already, but
  now we don't warn on an explicit flag requesting this)
* all platforms: Three plugin checks are now on-by-default,
  remove flags for these (see
    https://codereview.chromium.org/2267713003
    https://codereview.chromium.org/2268203002
    https://codereview.chromium.org/2265093002
  )
* win: clang-cl's /Brepro now does what it's supposed to do
* win: clang-cl now emits absolute paths in diagnostics, by
  popular request.

Ran `tools/clang/scripts/upload_revision.py 280106`.

BUG= 640254 , 637456 , 636109 , 636091 , 636099 

Review-Url: https://codereview.chromium.org/2292173002
Cr-Commit-Position: refs/heads/master@{#415563}

[modify] https://crrev.com/a033f395bf2547cf4764f77cc9c86d08f3e22c23/build/config/clang/BUILD.gn
[modify] https://crrev.com/a033f395bf2547cf4764f77cc9c86d08f3e22c23/build/config/compiler/BUILD.gn
[modify] https://crrev.com/a033f395bf2547cf4764f77cc9c86d08f3e22c23/build/config/sanitizers/BUILD.gn
[modify] https://crrev.com/a033f395bf2547cf4764f77cc9c86d08f3e22c23/build/config/win/BUILD.gn
[modify] https://crrev.com/a033f395bf2547cf4764f77cc9c86d08f3e22c23/tools/clang/scripts/update.py

Owner: amccarth@chromium.org
Status: Fixed

Sign in to add a comment