Skip to content

Commit 7aebfcf

Browse files
Merge pull request #3 from wamckee/master
Memory leaks in mc_parser.yy
2 parents a70f9e8 + f81e91a commit 7aebfcf

File tree

1 file changed

+22
-10
lines changed

1 file changed

+22
-10
lines changed

mc_parser.yy

+22-10
Original file line numberDiff line numberDiff line change
@@ -45,18 +45,30 @@
4545
%token <sval> NEWLINE
4646
%token <sval> CHAR
4747

48+
%type <sval> object
49+
50+
%destructor { delete( $$ ); } UPPER LOWER WORD NEWLINE CHAR
51+
4852

4953
%%
50-
S : S UPPER { driver.add_upper(); }
51-
| S LOWER { driver.add_lower(); }
52-
| S WORD { driver.add_word( *$2 ); delete( $2 ); }
53-
| S NEWLINE { driver.add_newline(); }
54-
| S CHAR { driver.add_char(); }
55-
| UPPER { driver.add_upper(); }
56-
| LOWER { driver.add_lower(); }
57-
| WORD { driver.add_word( *$1 ); delete( $1 ); }
58-
| NEWLINE { driver.add_newline(); }
59-
| CHAR { driver.add_char(); }
54+
55+
list_option : END | list END;
56+
57+
list
58+
: object
59+
| list object
60+
;
61+
62+
object : item { delete( $$ ); }
63+
64+
item
65+
: UPPER { driver.add_upper(); }
66+
| LOWER { driver.add_lower(); }
67+
| WORD { driver.add_word( *$1 ); }
68+
| NEWLINE { driver.add_newline(); }
69+
| CHAR { driver.add_char(); }
70+
;
71+
6072
%%
6173

6274

0 commit comments

Comments
 (0)