You are right, but ...
#pragma weak NMI_Handler = Default_Handler
can independently do what is intended. But it would be nice to add __attribute__((weak))functions to the prototypes for the following reason -
, , . IDE/Editor NMI_Handler, __attribute__((weak)), NMI_Handler, , NMI_Handler - ! , __attribute__((weak)), , , , , / !