artiq/artiq/test/lit/escape
David Nadlinger ae999db8f6 compiler: Revert function call lifetime tracking fix
This reverts commits f8d1506922
and cf19c9512d.

While the commit just fixes a clear typo in the implementation,
it turns out the original algorithm isn't flexible enough to
capture functions that transitively return references to
long-lived data. For instance, while cache_get() is special-cased
in the compiler to be recognised as returning a value of Global()
lifetime, a function just forwarding to it (as seen in the
embedding tests) isn't anymore.

A separate issue is also that this makes implementing functions
that take lists and return references to global data in user code
impossible, which central parts of the Oxford codebase rely on.

Just reverting for now to unblock master; a fix is easily designed,
but needs testing.
2020-07-30 16:40:39 +01:00
..
const_string.py compiler: Fix crash in escape analysis for assigning string literals 2019-03-31 17:10:27 +01:00
device_db.py fold comm device into core device 2017-05-22 15:45:45 +08:00
error_list_aug_asgn.py Fix ca254ec5. 2017-10-03 05:49:50 +00:00
error_mutable_attr.py compiler: make kernel_invariant an instance, not class, property. 2016-04-29 13:06:11 +00:00
error_string.py compiler.embedding: implement string concatenation. 2016-08-08 04:05:52 +00:00