Jim: I am using the latest development branch of GHDL which I have built from source and OSVVM 2015.03.
Like you say there is no problem outside of the protected type since the procedure is not visible to the outside as a stand-alone name without prefixing a protected type instance. The only problem is with line 493 which can be easily fixed with:
ReportAlerts(ReportAll => TRUE);