<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/xhtml; charset=utf-8">
</head>
<body>
<div style="font-family:sans-serif"><div style="white-space:normal">
<p dir="auto">On 29 May 2018, at 22:51, Eric Timmons wrote:</p>

</div>
<div style="white-space:normal"><blockquote style="border-left:2px solid #777; color:#777; margin:0 0 5px; padding-left:5px"><p dir="auto">Looks like SBCL 1.4.7 changed the slots of<br>
sb-c::compiler-error-context (in particular enclosing-source -><br>
%enclosing-source, source -> %source, and original-source was<br>
removed). As a result, deferred warnings are broken. Attached is the<br>
output of `./run-tests.sh sbcl test-deferred-warnings.script`<br>
<br>
-Eric</p>
</blockquote></div>
<div style="white-space:normal">

<p dir="auto">Thanks for letting me know.  Looks like there was a change to lazily compute some of these, and now there is an API to get their values, instead of directly poking into the structure.</p>

<p dir="auto">I'll have a look at fixing this bug, ideally today.</p>

<p dir="auto">If anyone knows how to identify SBCL version reliably, that would help.  I see I can use <code style="background-color:#F7F7F7; border-radius:3px; margin:0; padding:0 0.4em" bgcolor="#F7F7F7">sb-ext:assert-version->=</code> but it claims to use subversion revision numbers, based on the manual, which suggests it's probably broken now.  I guess I can use <code style="background-color:#F7F7F7; border-radius:3px; margin:0; padding:0 0.4em" bgcolor="#F7F7F7">version-satisfies</code> and <code style="background-color:#F7F7F7; border-radius:3px; margin:0; padding:0 0.4em" bgcolor="#F7F7F7">(uiop/os:lisp-version-string)</code> (which uses <code style="background-color:#F7F7F7; border-radius:3px; margin:0; padding:0 0.4em" bgcolor="#F7F7F7">lisp-implementation-version</code>).</p>

<p dir="auto">Does anyone have any suggestions about testing against multiple versions of SBCL? This brings to a head a problem that has been pending for a long time -- how should I be keeping around old versions of lisp implementations so that I can check that a fix needed to handle a new release doesn't break an old one?  I can try putting an extra version of SBCL into the linux box that runs the ASDF tests, but can't possibly do this for multiple different lisp implementations, nor can I handle more than a limited number of versions per implementation.  Any suggestions very welcome.</p>

<p dir="auto">Dave Cooper developed a partial solution for the multiple versions of Allegro, but only for the multiple <em>concurrent</em> versions.  Similarly, I'm testing on only 64-bit CCL, not 32, etc.</p>

<p dir="auto">[The irony of Stas B being the one who introduced this backward-incompatible change is not lost on me...]</p>
</div>
</div>
</body>
</html>