14.2 Warnings

C

cannot find entry symbol symbol defaulting to value.

The linker can’t find the entry symbol, so it will use the first address in the text section. This message may occur if the -e option incorrectly contains an equal sign (‘=’) in the option (i.e., -e=0x200).

common of ‘name’ overridden by definition
defined here.

The specified variable name has been declared in more than one file with one instance being declared as common. The definition will override the common symbol.

common of ‘name’ overridden by larger common
larger common is here.

The specified variable name has been declared in more than one file with different values. The smaller value will be overridden with the larger value.

common of ‘name’ overriding smaller common
smaller common is here.

The specified variable name has been declared in more than one file with different values. The first one encountered was smaller and will be overridden with the larger value.

D

data initialization has been turned off, therefore section secname will not be initialized.

The specified section requires initialization, but data initialization has been turned off; so, the initial data values are discarded. Storage for the data sections will be allocated as usual.

data memory region not specified. Using default upper limit of addr.

The linker has allocated a maximum-size stack. Since the data memory region was not specified, a default upper limit was used.

definition of ‘name’ overriding common
common is here.

The specified variable name has been declared in more than one file with one instance being declared as common. The definition will override the common symbol.

H

--heap option overrides HEAPSIZE symbol.

The --heap option has been specified and the HEAPSIZE symbol has been defined but they have different values so the --heap value will be used.

I

initial values were specified for a non-loadable data section (name). These values will be ignored.

By definition, a persistent data section implies data that is not initialized; therefore the values are discarded. Storage for the section will be allocated as usual.

M

multiple common of ‘name’
previous common is here.

The specified variable name has been declared in more than one file.

N

no memory region specified for section ‘secname’.

Section secname has been assigned to a default memory region, but other non-default regions are also defined.

O

object name was created for the processor and references register name.

An object file to be linked was created for a different processor family than the link target, and references an SFR that may not be compatible.

R

‘-retain-symbols-file’ overrides ‘-s’ and ‘-S’

If the strip all symbols option (-s) or the strip debug symbols option (-S) is used with --retain-symbols-file FILE only the symbols specified in the file will be kept.

S

--stack option overrides STACKSIZE symbol.

The --stack option has been specified and the STACKSIZE symbol has been defined but they have different values so the --stack value will be used.

T

target processor ‘name’ does not match linker script.

The link target processor specified on the command line does not match the linker script OUTPUT_ARCH command. The processor name specified on the command line takes precedence.