1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-26 00:34:17 -07:00
emacs/mps/test
Filip Strömbäck 1bfb4476e8 Added a test case for github issue
This is to illustrate that the value in GetLastError() may be
clobbered by the exception handler on Windows in some
circumstances. As this commit is before the patch, the test currently
fails (clearly showing the issue).

GitHub-reference: https://github.com/Ravenbrook/mps/issues/61
2021-03-12 12:40:56 +01:00
..
argerr Avoid using deprecated function mps_tramp. 2019-01-09 16:17:17 +00:00
conerr Avoid using deprecated function mps_tramp. 2019-01-09 16:17:17 +00:00
function Added a test case for github issue 2021-03-12 12:40:56 +01:00
misc Avoid using deprecated function mps_tramp. 2019-01-09 16:17:17 +00:00
test Remove reservoir functions, deprecated since release 1.115.0 2020-09-24 11:36:46 +01:00
testsets Mmqa test function/148.c was fixed by change 187224. 2020-09-04 21:47:05 +01:00
README New mmqa command debug compiles a test case and launches the debugger. 2016-09-12 12:26:40 +01:00

$Id$

This is the Memory Management QA test harness. To use it you need Perl
5 (or higher).


Quick start
-----------

In a shell in the test directory::

    perl test/qa clib
    perl test/qa run function/5.c
    perl test/qa runset testsets/passing
    perl test/qa debug argerr/12.c


Usage and options
-----------------

Run ``perl test/qa help`` for help; run ``perl test/qa options`` to
see what version of the harness you have (or look at the file
``test/version``) and which options are available.

The most important options are the ``-p`` option which specifies the
platform (for example, ``-p lii6ll``) if the auto-detected platform is
not the one you want to test, and the ``-v`` option which specifies
the variety (for example ``-v hot``) if the cool variety is not the
one you want to test.


Debugging
---------

MMQA sets its own assertion handler, so you'll probably want to set a
breakpoint on ``mmqa_assert_handler``.


Windows
-------

Use a Cygwin shell. Set the ``LANG`` environment variable::

    export LANG=C

to avoid locale warnings from Perl.

The runset command can result in this error::

    LINK : fatal error LNK1168: cannot open test/obj/nt_AMD64__pc/tmp_test.exe for writing

You may be able to avoid this by running "View Local Services" from
the Windows Control Panel, double-clicking the "Application
Experience" service, and switching "Startup type" to "Automatic". See
the documentation for LNK1168_.

.. _LNK1168: https://msdn.microsoft.com/en-us/library/hhbdtt6d.aspx