1.1 --- a/sourcepawn/compiler/sctracker.h Sun Oct 15 20:57:14 2006 +0000
1.2 +++ b/sourcepawn/compiler/sctracker.h Sun Oct 15 23:31:09 2006 +0000
1.3 @@ -12,6 +12,7 @@
1.4
1.5 typedef struct memuse_list_s {
1.6 struct memuse_list_s *prev; /* last used list */
1.7 + int list_id;
1.8 memuse_t *head; /* head of the current list */
1.9 } memuse_list_t;
1.10
1.11 @@ -29,6 +30,17 @@
1.12 void pushstacklist();
1.13 void popstacklist();
1.14 int markstack(int type, int size);
1.15 +/**
1.16 + * Generates code to free stack usage, but does not pop the list.
1.17 + * This is used for code like dobreak()/docont()/doreturn().
1.18 + * stop_id is the list at which to stop generating.
1.19 + */
1.20 +void genstackfree(int stop_id);
1.21 +
1.22 +/**
1.23 + * Resets the stack list by freeing everything
1.24 + */
1.25 +void resetstacklist();
1.26
1.27 extern memuse_list_t *heapusage;
1.28 extern memuse_list_t *stackusage;