David Anderson
4608050bd2
Port sc3 to C++.
2014-08-22 00:17:00 -07:00
David Anderson
5a4c50ce55
Port sp_symhash to C++.
2014-08-21 23:36:26 -07:00
David Anderson
e5e2c1fa3d
Simplify functag handling.
2014-08-20 00:00:24 -07:00
David Anderson
56cf6e723e
Remove unnecessary changes.
2014-08-17 01:21:35 -07:00
David Anderson
cef9d9d162
Fix returning strings from functions with variadic arguments.
2014-08-17 01:17:10 -07:00
Asher Baker
f570fa414b
Reformatted compiler output a little. (r=dvander)
2014-08-12 18:35:43 +00:00
David Anderson
ad376ff0b8
Introduce a typedef keyword.
2014-08-03 21:51:34 -07:00
David Anderson
09edda93ad
Fix style atrocities in sc1.c.
2014-08-03 18:53:58 -07:00
Ryan Stecker
fad5c590b6
Fix not adding the "include" directory to the spcomp search path.
2014-07-24 15:35:44 -05:00
David Anderson
97e821dd6f
Improve error messaging for reserved keywords (bug 6199).
2014-07-24 06:51:03 -04:00
David Anderson
3fc05056b0
Rename <unknown> to __unknown__ to quell sc7 asserts.
2014-07-23 23:25:12 -07:00
David Anderson
f41b3a2b06
Enable binreloc for OS X.
2014-07-23 23:21:03 -07:00
Ryan Stecker
6a2ec15041
Fix error message 102 to include the spectype that's missing.
...
Additionally this fixes invalid usage of error 102 in grow_stgbuffer.
2014-07-23 18:52:22 -05:00
David Anderson
2a99eecdb6
Fix bug in variadic argument parsing.
2014-07-21 23:01:35 -07:00
David Anderson
686890ec10
Clean up the struct syntax and force it to use newdecls.
2014-07-20 12:16:23 -07:00
David Anderson
8aa28e2c8d
More indentation, spacing, and style fixes in sc1.c.
2014-07-20 11:50:57 -07:00
David Anderson
16177e9ecc
Fix indentation, spacing, and style in declstruct().
2014-07-20 11:46:02 -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
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
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
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
2ade122cd2
Merge branch 'master' into fix-null-func
...
Conflicts:
sourcepawn/compiler/sc5.scp
2014-07-08 00:06:04 -07:00
David Anderson
e57a323dc8
WIP.
2014-07-07 23:31:31 -07:00
David Anderson
44316d63cc
Add setters and fix some methodmap bugs.
2014-07-06 23:37:43 -07:00
David Anderson
1277bbd50e
Mark the expression before flushing the staging buffer.
2014-07-05 14:15:44 -07:00
David Anderson
9ae3256bc0
Rename the null tag to null_t.
2014-07-05 13:31:10 -07:00
David Anderson
9ff38bcf80
Add nulls, and more newdecl and type system features.
...
New null_t type has a constant "null", which can be assigned to objects.
Methodmaps can now be "nullable", accepting null_t types.
The delete keyword now zaps non-const lvalue inputs.
Fixed some newdecl arguments not accepting references.
Allow functag matching to coerce arguments and return values.
Allow functags to accept new-style types as a return value.
2014-07-05 13:20:06 -07:00
David Anderson
96bbd4d7e0
Fix potential bugs in restoring newdecl state.
2014-07-05 01:13:45 -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
680a8e0283
Fix tests.
2014-07-05 00:44:46 -07:00
David Anderson
f62769108c
Fix some local declarations not working.
2014-07-04 23:53:16 -07:00
David Anderson
386b178ef3
Fix uninitialized variable warning.
2014-07-04 23:00:00 -07:00
David Anderson
79d9a49d28
Fix compiler bug.
2014-07-04 22:46:55 -07:00
David Anderson
376eb9725e
Add support for new-style declarations in local variables.
2014-07-04 21:16:39 -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
David Anderson
49eee8c04e
Fix regression in methodmap tagging.
2014-07-04 16:55:33 -07:00
David Anderson
58b9fd57b2
Remove unused "no-postdims" flag.
2014-07-04 16:41:38 -07:00
David Anderson
7e770908fb
Add support for decl lists.
2014-07-04 16:37:52 -07:00
David Anderson
3cf9e56a19
Fix various bugs in global newdecl support.
2014-07-04 14:31:56 -07:00
David Anderson
19815d42c3
Add new-style declaration support for global declarations.
2014-07-04 00:37:39 -07:00