MPS issue job003741

Titlempsw3.h is unnecessary
Statusclosed
Prioritynice
Assigned userGareth Rees
OrganizationRavenbrook
Descriptionmpsw3.h [1] has never been documented; mps_tramp() is deprecated [2] so there is no need to provide an efficient implementation; and in any case we don't use Windows Structured Exception Handling any more [3] so it can't work any more.
AnalysisOpen Dylan is including this header [4]. But only on Windows, and on Windows they are stuck on release 1.108 [5]. So it won't hurt them to remove it: as part of the modernization procedure they need to remove it anyway.

So this header should be deleted to simplify the interface and avoid people accidentally getting the SEH version of exception handling.

Note that after deleting mpsw3.h, there'll be no need for the lines

    /* "Structured Exception Handling is not portable." (mps_tramp). */
    #pragma warn(disable: 2008)

in testlib.h.
How foundinspection
Evidence[1] <http://www.ravenbrook.com/project/mps/master/code/mpsw3.h>
[2] <http://www.ravenbrook.com/project/mps/...manual/html/topic/thread.html#mps_tramp>
[3] <https://info.ravenbrook.com/infosys/cgi/perfbrowse.cgi?@describe+180961>
[4] <https://github.com/dylan-lang/opendyla...er/sources/lib/run-time/mps-collector.c>
[5] <https://github.com/dylan-lang/opendylan/blob/master/README.rst>
Created byGareth Rees
Created on2014-04-06 15:13:36
Last modified byGareth Rees
Last modified on2014-04-09 17:31:52
History2014-04-06 GDR Created.

Fixes

Change Effect Date User Description
185399 closed 2014-04-09 17:31:06 Gareth Rees Delete mpsw3.h (and associated warning pragma): obsoleted by change from Structured to Vectored Exception Handling.
185322 open 2014-04-07 18:19:37 Gareth Rees There's no need for test cases to include mpsw3.h any more.