David Anderson
afeae84340
Replace symbol proxies with type symbols.
...
Proxies were rather hacky and complicated, and only existed as a
workaround for oddities with constructors. This patch replaces them with
actual type symbols, a very tiny step to semantically getting rid of tags.
This greatly simplifies how we implement constructors, and paves the way
for using methodmap symbols in field expressions.
Since non-value symbols are new to spcomp1, we place a rather
pigeonholed check into primary() to make sure non-value symbols don't
escape into expressions.
2014-12-12 10:10:43 -08:00
David Anderson
0295f817b8
Allow int: and void: tags, but warn.
2014-12-10 02:36:30 -08:00
David Anderson
1ee3067575
Gracefully error on newly reserved keywords.
2014-12-09 23:18:11 -08:00
David Anderson
9f5c8b60ae
Add a "new" keyword for constructing nullable methodmaps.
2014-11-30 18:38:26 -08:00
David Anderson
673ff572c5
Disallow retagging enums or using implicit-int as an enum tag.
2014-11-20 19:30:22 -08:00
David Anderson
79143d8b6e
Port files.inc to transitional syntax.
2014-11-15 13:42:28 -08:00
David Anderson
4bc7b9243a
Define 'this' as a keyword.
2014-11-09 13:01:35 -08:00
David Anderson
512cbc73a0
Fix a loophole with static local variables.
2014-11-08 02:54:29 -08:00
David Anderson
039572060e
Add new dynamic array syntax.
2014-11-08 02:48:13 -08:00
David Anderson
f08e53f5d2
Make sizeof on indeterminate arrays an error.
2014-11-08 02:07:43 -08:00
David Anderson
70e095f320
Define post-fix arrays as determinate and pre-fix arrays as indeterminate.
2014-11-07 22:39:00 -08:00
David Anderson
a8796543af
Use symbols for fatal errors and bump them by 20 slots.
2014-11-07 17:41:33 -08:00
David Anderson
eaff5c9364
Allow any in new-style natives.
2014-10-30 17:19:01 -07:00
David Anderson
37638ba6fd
Remove support for multiple tags on an argument.
2014-09-04 09:59:43 -07:00
David Anderson
a09735a4c7
Remove SC_FUNC and SC_VDEFINE.
2014-08-22 00:53:47 -07:00
David Anderson
9c005d93ed
Port sc5 to C++.
2014-08-22 00:09:28 -07:00
David Anderson
fa446f74a1
Generate .scp files as part of the build process.
2014-07-24 07:58:03 -04:00