[LLVMbugs] [Bug 15076] New: Debug Info and Multi-Line statements

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sat Jan 26 08:24:35 PST 2013


             Bug #: 15076
           Summary: Debug Info and Multi-Line statements
           Product: clang
           Version: unspecified
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: LLVM Codegen
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: blackcalypso.lists at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 9927
  --> http://llvm.org/bugs/attachment.cgi?id=9927
The two examples (multi-expression if, do-while with line-break)

Clang does not correctly assign and emit line numbers for individual
sub-expressions of some specific multi-part statements.  I have attached two
functions to illustrate the issue in two different ways.

The first (foo) has a multi-line, multi-expression if statement.  Here, the
bitcode shows both the (x<y) and (y<z) expressions are assigned DebugLocs which
have line number 3 and column number 3 (the location of the "if" token).

The second, stranger, example (bar) shows a do-while statement where the
closing } and the while condition are not on the same line.  Here, all
expressions in the while condition are assigned the line and column number of
the }.  Specifically, in this case, the DebugLoc for the (x<10) expression
lists line number 6.

Note that having the expressions on different lines isn't a required condition,
but simply makes the issue more obvious.

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list