diff options
author | Søren Sandmann Pedersen <ssp@redhat.com> | 2012-06-18 01:59:37 -0400 |
---|---|---|
committer | Søren Sandmann Pedersen <ssp@redhat.com> | 2012-06-18 01:59:37 -0400 |
commit | b4675a903d6fe7c2e8aefb89a091b309e3dfe871 (patch) | |
tree | b221c36b7c4639817931456d9036cfe99fa6b44d | |
parent | 25edd2d8484456fd135beeaa63d172bb2d288fd7 (diff) |
Expression with goto in them
-rw-r--r-- | TODO | 10 | ||||
-rw-r--r-- | goto-powerful | 3 |
2 files changed, 13 insertions, 0 deletions
@@ -189,6 +189,16 @@ These will need similar code, so some of it may be sharable. Not very clear ... maybe it needs to go away and be replaced with definition expressions. + There is actually a big problem here because expression *can* have + gotos in them: + + B() -> int32 { goto blah; return 100; } + + print 7 + B(); + + which will cause problems because the "7" is left on the stack even + as control goes elsewhere. + - At the moment we directly change the nodes in optimize.c, this should be fixed with helper functions in graph.c (which should probably be split out in node.c). Things we need diff --git a/goto-powerful b/goto-powerful index 64985d2..5930055 100644 --- a/goto-powerful +++ b/goto-powerful @@ -1,3 +1,6 @@ +[Note: need to come up with an answer to the expression-with-goto-in-it + problem - see TODO]; + Go To Statement Considered Powerful Oort is a programming language I have been working on, on and off |