Commit Graph

371 Commits

Author SHA1 Message Date
David Anderson
dbee1bcd08 Add an error check after calling doexpr2(). 2014-11-08 03:07:34 -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
6d507ceb27 Add a special case for assigning a string literal to a char array. 2014-11-08 02:04:11 -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
2c31b99ce3 Move is_new and has_postdims bits out of declinfo and into typeinfo. 2014-11-07 17:05:27 -08:00
David Anderson
613b06f6c0 Improve error messages when we can't find a typeexpr on a method. 2014-10-30 21:15:48 -07:00
David Anderson
97c3a2bc6e Fix a crash when we fail to parse a typexpr in a global declaration. 2014-10-30 21:09:10 -07: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
David Anderson
d4fb74ef9a Fix regression where duplicate function names were not an error. 2014-09-16 22:32:46 -07:00
Nicholas Hastings
c62e7458f9 Disable RTTI for Loader, Logic, and JIT bins 2014-09-11 17:15:59 -07:00
Nicholas Hastings
9a9446400d Nuke spurious NULL checks in spcomp to appease Clang 3.5 2014-09-09 22:04:24 -04:00
David Anderson
d1aa9a3513 Merge branch 'calli-7' 2014-09-07 15:08:51 -07:00
David Anderson
60eb8ca4bd Merge branch 'master' into calli-5
Conflicts:
	public/amtl/am-utility.h
2014-09-07 15:03:28 -07:00
David Anderson
5b85f41fec Use the correct string table for tag names. 2014-09-07 15:02:09 -07:00
David Anderson
37638ba6fd Remove support for multiple tags on an argument. 2014-09-04 09:59:43 -07:00
David Anderson
01d1c0c806 Add a flag for warnings-as-errors. 2014-09-03 11:04:25 -07:00
David Anderson
9d337dd1a9 Merge pull request #146 from alliedmodders/unions
Add a "union" keyword to replace funcenum.
2014-08-31 16:02:59 -04:00
David Anderson
a1b7c32b29 Add a "union" keyword to replace funcenum. 2014-08-28 14:02:08 -07:00
Ryan Stecker
302dc1cb8a Add test. 2014-08-26 14:58:58 -05:00
David Anderson
6db4f31a10 Remove weird tag flags. 2014-08-24 20:47:07 -07:00
David Anderson
63e5ab18ff Remove support for multiple tags on an argument. 2014-08-24 18:59:51 -07:00
David Anderson
d230711e4d Bump SourcePawn version to 1.7 to match SourceMod. 2014-08-23 19:26:51 -07:00
Ryan Stecker
74908098f4 Allow trailing commas in string array declarations. (bug 6239) 2014-08-23 18:15:08 -05:00
David Anderson
078ee76491 Re-add .dbg.natives. 2014-08-23 13:40:50 -07:00
David Anderson
98ec07a419 Add debug info tables to smxbuilder. 2014-08-23 13:26:03 -07:00
David Anderson
c4056aea5d Rewrite the assembly pipeline.
This patch uses SmxBuilder from spcomp2 to replace the old assemble()
pipeline. Instead of generating into an old AMX structure, and then
decoding that into SMX, we now directly generate into SMX. This greatly
simplifies code generation and smx building.
2014-08-23 13:25:58 -07:00
David Anderson
7a51d5d549 Remove unused variables. 2014-08-23 13:25:48 -07:00
David Anderson
0cf8eb2854 Fix Windows build more. 2014-08-22 21:07:49 -07:00
David Anderson
d20ba38d6b Fix Windows build. 2014-08-22 20:47:18 -07:00
David Anderson
4d42fa0305 Fix Windows build. 2014-08-22 20:41:24 -07:00
David Anderson
d562593d31 Fix build. 2014-08-22 18:27:46 -07:00
David Anderson
27c3866b90 Merge branch 'calli-4' 2014-08-22 10:10:48 -07:00
David Anderson
50f3ec8da2 Merge branch 'calli-3' 2014-08-22 09:59:11 -07:00
David Anderson
f42651a813 Merge branch 'calli-2' 2014-08-22 09:58:14 -07:00
David Anderson
91f0f1001b Merge pull request #134 from alliedmodders/calli
Simplify how functags work.
2014-08-22 09:54:48 -07:00
David Anderson
a09735a4c7 Remove SC_FUNC and SC_VDEFINE. 2014-08-22 00:53:47 -07:00
David Anderson
6291374b35 Move rtti hacks. 2014-08-22 00:41:32 -07:00
David Anderson
dcd246c7ef Port scvars to C++. 2014-08-22 00:39:03 -07:00
David Anderson
29fbbade69 Port sc1 to C++. 2014-08-22 00:38:04 -07:00
David Anderson
48d228e2b1 Port sc2 to C++. 2014-08-22 00:23:02 -07:00
David Anderson
4608050bd2 Port sc3 to C++. 2014-08-22 00:17:00 -07:00
David Anderson
234b4907ed Port sc4 to C++. 2014-08-22 00:12:16 -07:00
David Anderson
9c005d93ed Port sc5 to C++. 2014-08-22 00:09:28 -07:00
David Anderson
3eb1faa470 Port sc6 to C++. 2014-08-22 00:07:40 -07:00
David Anderson
142fbaafdd Port sc7 to C++. 2014-08-22 00:04:48 -07:00
David Anderson
afd6009fda Port scexpand and sci18n to C++. 2014-08-22 00:00:31 -07:00
David Anderson
3e8157c6bc Port lstring and sclist to C++. 2014-08-21 23:58:19 -07:00
David Anderson
2ba4fb180e Move scstate.c to C++. 2014-08-21 23:54:10 -07:00
David Anderson
261188fd1b Port a bunch of legwork files to C++. 2014-08-21 23:53:11 -07:00
David Anderson
5a4c50ce55 Port sp_symhash to C++. 2014-08-21 23:36:26 -07:00
David Anderson
f5efdbf6f5 Remove hardtabs and fix style issues. 2014-08-21 22:42:22 -07:00
David Anderson
25241fa278 Remove file. 2014-08-21 22:19:25 -07:00
David Anderson
225954a27c Modernize the smx headers. 2014-08-21 22:16:07 -07:00
David Anderson
1f51393e26 Fix typedefs not fixing string sizes (bug 6220). 2014-08-20 00:26:09 -07:00
David Anderson
d91d69f72e Remove newline. 2014-08-20 00:06:33 -07:00
David Anderson
e5e2c1fa3d Simplify functag handling. 2014-08-20 00:00:24 -07:00
David Anderson
942a3cd155 Another dedent. 2014-08-19 22:32:02 -07:00
David Anderson
8dc4fcc728 Remove allowproccall code, dedent a block. 2014-08-19 22:29:13 -07:00
David Anderson
385d3708a3 Fix style issues in sctracker.c. 2014-08-19 22:17:10 -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
2553d02698 Fix build. 2014-07-24 10:40:51 -04:00
David Anderson
34e57b77b1 Fix spacing. 2014-07-24 08:54:52 -04:00
David Anderson
fa446f74a1 Generate .scp files as part of the build process. 2014-07-24 07:58:03 -04:00
David Anderson
94b64cd6fc Regen sc5.scp. 2014-07-24 06:55:57 -04: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
Ryan Stecker
f3671e55db Close file handle on success in pc_opensrc. 2014-07-22 17:33:26 -05:00
David Anderson
2a99eecdb6 Fix bug in variadic argument parsing. 2014-07-21 23:01:35 -07:00
David Anderson
57303f4310 Merge pull request #103 from alliedmodders/fix-incdec
Fix postinc/dec operations on accessors.
2014-07-20 21:24:57 -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
2b74f1bd61 Remove unused function. 2014-07-20 11:19:48 -07:00
David Anderson
5daa420aed Fix inc/dec operations on accessors. 2014-07-20 11:18:38 -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
71fb0d1d18 Address review comment. 2014-07-12 21:21:07 -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
294fdee1e6 Clarify lexpop(). 2014-07-12 00:09:05 -07:00