You copied the Doc URL to your clipboard.
The option --strict_symbols
checks that the
mapping symbol type matches ABI symbol type. The linker displays
a warning if the types do not match.
A mismatch can occur only if you have hand-coded your own assembler.
In the following assembler code the symbol sym
has
type STT_FUNC
and is ARM:
area code, readonly DCD sym + 4 ARM sym PROC NOP THUMB NOP ENDP END
The difference in behavior is the meaning of DCD
sym + 4
:
In pre-ABI linkers the state of the symbol is the state of the only of the mapping symbol at that location. In this example, the state is Thumb.
In ABI linkers the type of the symbol is the state of the location of symbol plus the offset.
- Concepts
Using the Linker:
- Reference