Hm, good call. Normally, yes, we should check for null on a weak symbol, but it's all a matter of deciding what we can reasonably assume from a particular context.

Since `System1MsTick` is both declared and defined in the common library, does it even need to be a weak symbol?  I think here in core-firmware, we can assume it exists if we depend on the common library, which defines it.