https://sourceware.org/bugzilla/show_bug.cgi?id=10774

--- Comment #2 from Konrad Schwarz <konrad.schwarz at siemens dot com> ---
I believe ELF reserves section names beginning with a dot for its own use, so
technically you shouldn't name your sections .FLASH or .ROM.

The compiler will issue a diagnostic for a write to a const-qualified object.
In your example, the symbols are not const qualified.  You would make more use
of the type-checking facilities of the compiler with

extern char const start_of_FLASH [];

This makes the clause about the compiler being able to check writes true.

(You would then probably want to replace start_of_FLASH with start_of_ROM in
the later example dealing with alignment.)

I prefer `&start_of_FLASH' to `& start_of_FLASH'; as I leave a space around
binary operators `a & b', it makes it easier to distinguish between the unary
and binary meanings of `&'.

In the final section, I would write "transformations".  There is one
transformation from C++ symbol to C symbol names (mangling), and possibly a
second transformation from C to assember/linker names (e.g., underscore
prepending).  Mangling is dealt with `extern "C"'.  You could add that from
C++, you need to declare `foo' as `extern "C" int foo [];'

-- 
You are receiving this mail because:
You are on the CC list for the bug.

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to