PHP Arrays plus symbol (+) syntax
With the $array1 + $array2 syntax, anything with a text key in $array1 is kept, at the expense of anything with the same key in $array2.
$form_context = array(
'entity_type' => $form['#entity_type'],
'bundle' => $form['#bundle'],
// Although we are partially generalized with the above options, in
// truth we do not know that other forms follow the same structure as
// node forms, so we will use 'nid' until doing general case for real.
'nid' => $form['nid']['#value'],
); // ...
$context = array(
'callback' => $formmsg['callback'],
) + $form_context;
We don't have to worry about 'callback', or anything else that gets defined in $context, getting overridden by $form_context.