> +extern const char *get_procsignal_reason_desc(ProcSignalReason reason)
> +    {
> +        const char *reasonDesc = "unknown reason";
> +
> +        switch (reason)
> +        {
> +            case PROCSIG_RECOVERY_CONFLICT_BUFFERPIN:
> +                reasonDesc = "buffer pin";
> +                break;
It doesn't work to construct sentences from pieces, for translatability
reasons.  Maybe you can return the whole errmsg sentence from this
routine instead.