Perhaps the compiler found that copying a character is more efficient than referencing it. This is due to the const modifier.
In many cases, loading a register with an βimmediateβ value (one of which is stored in an executable file) is more efficient than loading from a location in ROM (read-only memory) that uses indirect addressing.
I would not worry about duplicating a constant integer in many object files, unless it makes the files too large to fit on the hard drive. In addition, object files are an intermediate data store until an executable file or libraries are created.
I suggest focusing more on the quality and reliability of your application than on internal object files.
source share