Commit Graph

34 Commits

Author SHA1 Message Date
Artem Golubikhin
20d917a307 Port bugfix for incorrect heap deallocation on conditional operator (#627)
* Revert 4f8917ec (experimental bugfix for heap in conditional)

* Port bugfix for incorrect heap deallocation on conditional operator (ported from compuphase upstream)

* Fix the upstream bugfix

Fixed the wrong order of heaplist nodes and the incorrect calculation of the max. heap usage.

* Add an additional pass for functions that return array if they are used before definition (inside definition (recursion) is a "before definition" situation too)
2018-11-02 14:15:31 +01:00
Vincent Herbet
5694acf482
Compiler: Fix an issue related to passing arrays based on an enumeration to a function (#582) 2018-09-14 15:47:11 +02:00
Vincent Herbet
1a56577f7a Fix inc/dec operators not returning an iEXPRESSION (#429)
* Fix inc/dec operators not returning an iEXPRESSION

* Fix inc/dec operators in return statement
2017-04-29 23:33:09 +02:00
Karol Szuster
446a1a5108 Fix compilation error for GCC 6.1
Fix compilation error due -Wmisleading-indentation
2016-05-04 15:01:29 +02:00
Nicholas Hastings
79a6dc9501 Fix shift-negative-value warning on newer compiler versions.
error: shifting a negative signed value is undefined
2016-03-17 15:12:26 -04:00
Nicholas Hastings
19dd940b22 Fix pointer-bool-conversion warning on newer compiler versions.
error: address of array 'lval->sym->name' will always evaluate to 'true'
2016-03-17 15:10:55 -04:00
Arkshine
f710188c86 Compiler: Ability to directly reference another address in a default argument (for arrays only)
SM patch: d8d13f1920
2015-05-19 00:01:29 +02:00
Arkshine
b0543a111d Fix tagof operator used as a default value for function arguments 2015-01-30 23:34:04 +01:00
Arkshine
a0cfa59e56 Compiler: Fix tautological warning with clang-3.5 2015-01-11 23:09:53 +01:00
Arkshine
c068eed19d Simplify code. 2014-12-13 11:15:06 +01:00
Arkshine
4b11a54345 Make sure overriden tag is done with _: 2014-12-09 22:59:57 +01:00
Arkshine
78940b46a4 Untabify code 2014-12-09 22:29:43 +01:00
Arkshine
45bf43d76e FIx regression with member tag of an enum not being checked on assigment 2014-12-09 22:26:59 +01:00
Arkshine
a873066466 Compiler: Fix enum field size was not taken into account when implicitly passed to a function.
Imported from Pawn 3.3.3930.

Example:

---

enum tag
{
  member[32]
}

new var[tag];

foo(const string[], size = sizeof(string))
{
    // size returns 1 before fix, 32, after.
}

public plugin_init()
{
    foo(var[member]);
}

---
2014-08-26 09:05:22 +02:00
Arkshine
27825963f6 Compiler: Fix indentation. 2014-08-26 09:05:15 +02:00
Arkshine
92255bcdc3 Compiler: Fix crash when using tagof(tagname:)
Imported from SA-MP: 53ef10ffc7
2014-08-26 09:04:52 +02:00
Arkshine
3b2618f63b Compiler: Fix improper handling of constant chained relational operators.
Imported from SM: https://bugs.alliedmods.net/show_bug.cgi?id=3838.
2014-08-26 09:04:42 +02:00
Arkshine
520493fab1 Compiler: Add #pragma deprecated.
This is based on SM, including patch to support macros/constants (https://hg.alliedmods.net/sourcemod-central/rev/ef8dd1cddc35).
Updated also some pawn includes to use this new pragma.
2014-08-26 09:04:36 +02:00
Scott Ehlert
1cff91ced5 Update license headers for compiler. 2014-08-04 13:18:28 -05:00
Scott Ehlert
40c1fee55a Added support for Mac OS X and building with clang (bug 5601, r=dvander). 2013-02-13 01:14:37 -06:00
David Anderson
b706108ed6 Squashed commit of the following:
commit 011d9b6b07d904ad1e81ef7c747269903e2d47c4
Author: David Anderson <dvander@alliedmods.net>
Date:   Mon Jan 11 00:17:08 2010 -0600

    Initial import from Subversion (amxmodx/trunk rev 3757).
2014-02-06 23:06:54 -08:00
Steve Dudenhoeffer
1129f09660 Added the any tag fix for functions returning any: 2007-05-22 01:29:18 +00:00
Steve Dudenhoeffer
ea912f794c Stole the magical any: tag from sourcemod 2007-04-24 13:36:36 +00:00
David Anderson
4f8917ec44 experimental hack fix for code generation bug 2006-09-12 07:42:15 +00:00
David Anderson
636f1141e4 removed test code 2006-01-07 06:16:52 +00:00
David Anderson
3b79a063b6 finally, a correct fix 2006-01-07 05:39:40 +00:00
David Anderson
07b9bb9987 okay, works 2006-01-07 04:47:49 +00:00
David Anderson
39fd00c5be real fix this time 2006-01-07 04:43:01 +00:00
David Anderson
a4db0d927a Fixed bug at22981 2006-01-07 02:20:54 +00:00
David Anderson
4d9f2ded74 Fix for issue at19199 2005-11-19 09:16:27 +00:00
David Anderson
6163e25d7d *** empty log message *** 2005-11-19 09:07:28 +00:00
David Anderson
db33e50f92 Fixed a bug where stocks using native names crashed 2005-09-13 07:32:07 +00:00
David Anderson
a105bc7402 Fixed bug at18003 (Geesu)
Fixed bug p1123149221 (Twilight Suzuka)
2005-09-06 01:55:41 +00:00
David Anderson
25d629083f Initial import of Pawn (Small 3.0) 2005-07-24 20:00:55 +00:00