On 14.01.2014 14:44, Gary Oberbrunner wrote:
OK, I'll try that. I guess the approach should be to set a new (temporary) flag in the node when its executor is released, and then print a stack trace if any node with that flag set gets its changed() method called?

This flag already exists and it's called "self.released_target_info" (check the end of the relase_target_info() method). Then you want to use the KeyError exception path in File.changed() like this:

          if node is None:
            try:
                return self._memo['changed']
            except KeyError:
                if self.released_target_info:
                    # We have no executor anymore, but the cached "changed"
                    # value doesn't exist either -> print stacktrace!

Dirk


_______________________________________________
Scons-dev mailing list
Scons-dev@scons.org
http://two.pairlist.net/mailman/listinfo/scons-dev

Reply via email to