readelf vs. mapping symbols
This reverts commit
45cf0b829303, which isn't needed after commit
6d7e5bcca5. Mapping symbols are like any other local symbol, and
shouldn't appear after the end of a section.
The real bug that resulted in both of these commits is that st_value
in an executable or shared library is the symbol address. It was
wrong to compare an address against a section size (you'd need to
subtract off the section vma first). The second commit limited the
warning to ET_REL where st_value is a section offset and thus can be
compared directly to the section size.