[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/5523] New: Confusing warning: "expression dangerous with linker

From: j at uriah dot heep dot sax dot de
Subject: [Bug gas/5523] New: Confusing warning: "expression dangerous with linker stubs"
Date: 27 Dec 2007 19:25:59 -0000

This warning is emitted in line 648 of file gas/config/tc-avr.c.

This warning has been confusing a lot of users in the past, because it is
ultimately generated for legitimate assembly code generated by GCC as
part of jump tables resulting out of a larger switch statement.

Discussion with the author of the atmega256x patch, Björn Haase, resulted
in an agreement that the warning should just be removed.  There is indeed
a minimal danger that a switch statement could cross an 128 KiB boundary
where a linker stub could suddenly be placed within the table, but as the
assembler cannot reliably detect this situation at all, it confuses more
people with legitimate code (not crossing a 128 KiB boundary) than it
would be really able to help out those who are in danger.  In the end, the
users are told to ignore the warning, so it doesn't do any good at all.  In
addition, Björn pointed out that it could only detect part of the problem
but is not able to cover all possible dangerous cases, because some code
might hide dangerous operations between other assembly code that is not
covered by the warning.

If at all, this warning needs to be emitted by GCC itself whenever it
generates the possibly dangerous code.

           Summary: Confusing warning: "expression dangerous with linker
           Product: binutils
           Version: 2.18
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gas
        AssignedTo: unassigned at sources dot redhat dot com
        ReportedBy: j at uriah dot heep dot sax dot de
                CC: bug-binutils at gnu dot org
GCC target triplet: avr-*-*


------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]