From cdf2822743b3beeb37ebc3deea8e08b6130698c5 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Sat, 12 May 2018 10:22:26 -0700 Subject: 4242 - get rid of refcounts entirely We're going to lean back into the experiment of commit 4179 back in Jan. If we delete memory it's up to us to ensure no pointers into it survive. Since deep-copy depends on our refcounting infrastructure, it's gone as well. So we're going to have to start watching out for pointers shared over channels. --- html/010vm.cc.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'html/010vm.cc.html') diff --git a/html/010vm.cc.html b/html/010vm.cc.html index 096cc89f..a22385f6 100644 --- a/html/010vm.cc.html +++ b/html/010vm.cc.html @@ -408,7 +408,7 @@ if ('onhashchange' in window) { 345 int value = 0; 346 if (contains_key(Type_ordinal, type_name)) 347 value = get(Type_ordinal, type_name); -348 else if (is_integer(type_name)) // sometimes types will contain non-type tags, like numbers for the size of an array +348 else if (is_integer(type_name)) // sometimes types will contain literal integers, like for the size of an array 349 value = 0; 350 else if (properties->value == "->") // used in recipe types 351 value = 0; @@ -464,7 +464,7 @@ if ('onhashchange' in window) { 401 // only constraint we care about: if a < b then !(b < a) 402 bool type_tree::operator<(const type_tree& other) const { 403 if (atom != other.atom) return atom > other.atom; // atoms before non-atoms -404 if (atom) return name < other.name; // sort atoms in lexical order +404 if (atom) return value < other.value; 405 // first location in one that's missing in the other makes that side 'smaller' 406 if (left && !other.left) return false; 407 if (!left && other.left) return true; @@ -518,7 +518,7 @@ if ('onhashchange' in window) { 455 CHECK(!(*b.type < *a.type)); 456 } 457 void test_compare_list_with_smaller_left_but_larger_right() { -458 reagent a("a:address:number"), b("b:character:array"); +458 reagent a("a:number:character"), b("b:boolean:array"); 459 CHECK(*a.type < *b.type); 460 CHECK(!(*b.type < *a.type)); 461 } -- cgit 1.4.1-2-gfad0