For internal names, all characters are significant. For external names, the number of significant characters are defined by the linker; for almost all targets, all characters are significant.
This is a property of the linker. C99 requires that case distinctions are always significant in identifiers with external linkage and systems without this property are not supported by GCC.