summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2013-11-21 22:07:55 -0800
committerKaz Kylheku <kaz@kylheku.com>2013-11-21 22:07:55 -0800
commit8680ae708b8dff9c52f23e8b47f06320f30b8c95 (patch)
treed2c2a17945ec290f6922c730d067cf74ce55810d /ChangeLog
parentfb817f77ecad88117b4c5a98c1c8b6adbf492dec (diff)
downloadtxr-8680ae708b8dff9c52f23e8b47f06320f30b8c95.tar.gz
txr-8680ae708b8dff9c52f23e8b47f06320f30b8c95.tar.bz2
txr-8680ae708b8dff9c52f23e8b47f06320f30b8c95.zip
Nasty bug fixed: @(accept) from inside a @(collect) was found not to
propagate bindings. The culprit? The bindings_coll variable in the v_collect function being indeterminate by the well-documented and understood action of setjmp. Marking the bindings_coll variable volatile instantly fixed it. I reviewed this code to find any other instance of this oversight. * match.c (v_skip, v_collect): Mark some local variable volatile: precisely those which are used after possibly returning via an unwind, and which might have been modified since setting up the unwind block.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog14
1 files changed, 14 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 9b990984..fab42277 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2013-11-21 Kaz Kylheku <kaz@kylheku.com>
+
+ Nasty bug fixed: @(accept) from inside a @(collect) was found not to
+ propagate bindings. The culprit? The bindings_coll variable in the
+ v_collect function being indeterminate by the well-documented and
+ understood action of setjmp. Marking the bindings_coll variable
+ volatile instantly fixed it. I reviewed this code to find any other
+ instance of this oversight.
+
+ * match.c (v_skip, v_collect): Mark some local variable volatile:
+ precisely those which are used after possibly returning via an
+ unwind, and which might have been modified since setting up
+ the unwind block.
+
2013-11-05 Kaz Kylheku <kaz@kylheku.com>
* genvim.txr: Handle symbols whose C names end with _star_s,