[Bug c/38354] Spurious error: initializer element is not computable at load time
joseph at codesourcery dot com
gcc-bugzilla@gcc.gnu.org
Tue Sep 9 15:59:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38354
--- Comment #10 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
This seems like an enhancement request to me. Initializers using a 64-bit
function address cast to 32-bit are outside the scope of my model of
constant expressions for GNU C
(<http://www.polyomino.org.uk/computer/c/const-exprs-gnu.txt> - fairly
old, may be out of date). It so happens that the x86_64 ABI does include
a relocation for 32-bit symbol references (in fact two of them,
R_X86_64_32 and R_X86_64_32S), but I don't believe GCC has that
information about what relocations the target supports at present (and
then there would be the question of which of those two relocations to use,
though maybe that's a question for the assembler).
More information about the Gcc-bugs
mailing list