From 0edd9b9fc60440213e4df926ea511419ee291f1e Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Fri, 15 Jun 2018 22:12:03 -0700 Subject: 4257 - abortive attempt at safe fat pointers I've been working on this slowly over several weeks, but it's too hard to support 0 as the null value for addresses. I constantly have to add exceptions for scalar value corresponding to an address type (now occupying 2 locations). The final straw is the test for 'reload': x:num <- reload text 'reload' returns an address. But there's no way to know that for arbitrary instructions. New plan: let's put this off for a bit and first create support for literals. Then use 'null' instead of '0' for addresses everywhere. Then it'll be easy to just change what 'null' means. --- 060rewrite_literal_string.cc | 1 + 1 file changed, 1 insertion(+) (limited to '060rewrite_literal_string.cc') diff --git a/060rewrite_literal_string.cc b/060rewrite_literal_string.cc index f4ed9b4c..95e38924 100644 --- a/060rewrite_literal_string.cc +++ b/060rewrite_literal_string.cc @@ -19,6 +19,7 @@ Transform.push_back(rewrite_literal_string_to_text); // idempotent set recipes_taking_literal_strings; :(code) void initialize_transform_rewrite_literal_string_to_text() { + recipes_taking_literal_strings.insert("assert"); recipes_taking_literal_strings.insert("$print"); recipes_taking_literal_strings.insert("$dump-trace"); recipes_taking_literal_strings.insert("$system"); -- cgit 1.4.1-2-gfad0