Make the pretty printer resilient to incomplete nametab (progress on #4363).
Make the pretty printer resilient to incomplete nametab (progress on #4363).

The nametab in which the error message is printed is not the one in
which the error message happens.

This reveals a weakness in the fix_exn code: the fix_exn function should
be pure, while in some cases (like this one) uses the global state (the
nametab) to print a term in a pretty way (the shortest non-ambiguous name
for constants).

This patch makes the externalization phase (used by term printing)
resilient to an incomplete nametab, so that printing a term in the
wrong nametab does not mask the original error.

ejgallego/coq,amintimany/coq,ppedrot/coq,ejgallego/coq,gares/coq,Matafou/coq,letouzey/coq-wip,mattam82/coq,Ptival/coq,Matafou/coq,coq/coq,letouzey/coq-wip,william-lawvere/coq,ejgallego/coq,Zimmi48/coq,ppedrot/coq,SkySkimmer/coq,coq/coq,SkySkimmer/coq,Matafou/coq,gares/coq,ppedrot/coq,ppedrot/coq,amintimany/coq,letouzey/coq-wip,mattam82/coq,william-lawvere/coq,JasonGross/coq,gares/coq,JasonGross/coq,amintimany/coq,Ptival/coq,ppedrot/coq,herbelin/github-coq,maximedenes/coq,ejgallego/coq,silene/coq,Lionel-Rieg/coq,maximedenes/coq,maximedenes/coq,JasonGross/coq,silene/coq,herbelin/github-coq,maximedenes/coq,SkySkimmer/coq,william-lawvere/coq,SkySkimmer/coq,Zimmi48/coq,herbelin/github-coq,maximedenes/coq,gares/coq,silene/coq,letouzey/coq-wip,Lionel-Rieg/coq,Ptival/coq,Lionel-Rieg/coq,coq/coq,coq/coq,JasonGross/coq,gares/coq,Zimmi48/coq,letouzey/coq-wip,mattam82/coq,Zimmi48/coq