David Anderson
c116a731f1
Remove sizeof() as a special-case default argument value.
2015-02-02 21:10:20 -08:00
David Anderson
491036a1e6
Allow "stock static" in addition to "static stock".
2015-01-04 12:04:51 -08:00
Ryan Stecker
154d84668b
Old style retagging should emit a compiler warning when newdecls are required.
2014-12-17 16:37:39 -06:00
David Anderson
bab1110bc0
Disallow coercion to/from char[] and any[].
2014-12-14 02:00:58 -08:00
David Anderson
722a23c818
Redo menu methodmaps.
2014-12-13 12:53:30 -08:00
David Anderson
5b69efe5d4
Add static method support to methodmaps.
2014-12-12 10:10:46 -08:00
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
68e0645813
Add a view_as operator.
2014-11-30 19:08:25 -08:00
David Anderson
157549e119
Fix a bug where aliased constructors of nullable methodmaps could not be used.
2014-11-30 18:56:37 -08:00
David Anderson
9f5c8b60ae
Add a "new" keyword for constructing nullable methodmaps.
2014-11-30 18:38:26 -08:00
David Anderson
62c243f0a5
Fix reading the wrong symbol name when throw argument errors.
2014-11-22 12:23:57 -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
cfa0d9341e
Remove handling of class pseudokeyword since there is no C++ API to use it.
2014-11-09 18:12:30 -08:00
David Anderson
4bc7b9243a
Define 'this' as a keyword.
2014-11-09 13:01:35 -08:00
David Anderson
22df518ab5
Fix a bug where local dynamic array declarations could be mistakenly parsed as old decls (bug 6280).
2014-11-09 00:15:09 -08:00
David Anderson
c228be83d6
Revert "Fix a bug where local dynamic array declarations could be mistakenly parsed as old decls."
...
This reverts commit 046f167b6e
.
2014-11-09 00:15:00 -08:00
David Anderson
046f167b6e
Fix a bug where local dynamic array declarations could be mistakenly parsed as old decls (bug 6279).
2014-11-09 00:12:44 -08:00
David Anderson
704e9579f7
Fix comparisons of derived tags (bug 6239).
2014-11-08 20:27:39 -08:00
David Anderson
3cc5c198b4
Allow dynamic char arrays.
2014-11-08 17:39:43 -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
eaff5c9364
Allow any in new-style natives.
2014-10-30 17:19:01 -07:00
David Anderson
e7fc06910b
Fix a crash when properties have setters but not getters.
2014-10-29 20:51:03 -07:00
Ryan Stecker
302dc1cb8a
Add test.
2014-08-26 14:58:58 -05:00
David Anderson
1f51393e26
Fix typedefs not fixing string sizes (bug 6220).
2014-08-20 00:26:09 -07:00
David Anderson
97e821dd6f
Improve error messaging for reserved keywords (bug 6199).
2014-07-24 06:51:03 -04:00
David Anderson
2a99eecdb6
Fix bug in variadic argument parsing.
2014-07-21 23:01:35 -07:00
David Anderson
4051756576
Check for null map in matchtag().
2014-07-20 10:15:49 -07:00
David Anderson
b0e98b16ec
Mark usage correctly when invoking special natives.
2014-07-17 22:30:13 -07:00
David Anderson
f79f5df5ab
Allow the any type in non-native newdecls.
2014-07-17 21:43:59 -07:00
David Anderson
beeb848724
Rename.
2014-07-17 21:19:31 -07:00
David Anderson
805b66e539
Fix null not working with comparisons.
2014-07-17 21:18:49 -07:00
David Anderson
84344c1592
Fix const with newdecls and a varargs bug. (bug 6179)
2014-07-17 20:44:54 -07:00
David Anderson
9c6b82f3a5
Merge pull request #89 from alliedmodders/bug-6176
...
Fix crash with malformed arguments (bug 6176).
2014-07-13 11:26:57 -07:00
David Anderson
2ea9ec50b5
Merge pull request #91 from alliedmodders/bug-6183
...
Show errors for methods that are unused. (bug 6183)
2014-07-13 11:24:51 -07:00
David Anderson
58a3cb4a06
Merge pull request #90 from alliedmodders/bug-6178
...
Allow chaining off method calls. (bug 6178)
2014-07-13 11:24:22 -07:00
David Anderson
cd6997cd0b
Merge pull request #88 from alliedmodders/bug-6175
...
Fix and formalize newline and semicolon behavior in methodmaps. (bug 6175)
2014-07-12 20:45:35 -07:00
David Anderson
5dd5b5131b
Show errors for methods that are unused. (bug 6183)
2014-07-12 10:28:29 -07:00
David Anderson
1a83ca57fc
Allow chaining off method calls. (bug 6178)
2014-07-12 10:05:43 -07:00
David Anderson
21d3a7f93e
Fix crash with malformed arguments (bug 6176).
2014-07-12 09:31:51 -07:00
David Anderson
3d3e5c40c2
Fix and formalize newline and semicolon behavior in methodmaps. (bug 6175)
2014-07-12 00:07:34 -07:00
David Anderson
919e859a6d
Fix "static stock" not working (bug 6174).
2014-07-10 23:18:07 -07:00
David Anderson
02b7f42811
Unkeyword "class", make it contextual.
2014-07-08 00:44:34 -07:00
David Anderson
da33c79d8b
Add #pragma newdecls required|optional.
2014-07-05 01:08:14 -07:00
David Anderson
bfc65b086a
Fix bug in newdecls in for loop initializers.
2014-07-05 00:48:32 -07:00
David Anderson
1c41f905f9
Add some tests and errors for bad void usage.
2014-07-04 17:14:40 -07:00
David Anderson
dfa9a8f134
Add tests.
2014-07-04 17:01:12 -07:00