melex750
250ea57e8b
Fix arithmetic operations with integers ( #993 )
...
Also fixed unsigned right shift operator ">>>"
2019-04-11 04:15:27 -04:00
krzys_h
5283865a5c
Merge pull request #1136 from colobot/dev-cbot-optimizations
...
Some CBot code optimizations
2018-05-07 20:53:52 +02:00
AbigailBuccaneer
ea64edaa0b
Compile with -Wmissing-declarations
...
-Wmissing-declarations enforces that every function (except for static
functions) must be declared separately before it's defined. This
essentially enforces that every function must be either static, or
declared in a header elsewhere.
This helps the optimizer, as it can do a better job of inlining if it
knows that a function won't be used outside of a given file. It also
helps -Wunused-function (which is enabled by -Wall) find more unused
functions.
Note that Clang spells this option -Wmissing-prototypes, which
confusingly is the name of a related but different warning option under
GCC.
2018-04-21 16:49:27 +01:00
krzys-h
1c2bdc9cab
Update license headers
2018-04-20 02:08:50 +02:00
krzys-h
477dc0cae7
Some CBot code optimizations
2018-04-06 15:02:06 +02:00
melex750
a9e0874abc
Fix 'this' for object:: functions
...
Fixes #672
Fixes #1026
2017-10-24 04:46:07 -04:00
melex750
c03dfc1284
Add escape codes for string literals
2017-07-22 14:29:05 -04:00
melex750
15b8cf7f78
Update object variable when concatenating strings
2017-05-25 02:09:44 -04:00
Abigail
11d950221b
Fix all compiler warnings and enable -Werror ( #955 )
...
This removes all compilation warnings on:
* g++ 4.7.4, 4.8.5, 4.9.4, 5.4.1, 6.3.0, 7.0.1-svn246759
* clang++ 3.9.1, 4.0.0, 5.0.0-svn303007
2017-05-22 11:10:35 +02:00
melex750
f80db9e8fb
Fix using negative numbers in default arguments
...
Issue #919
2017-03-03 02:11:10 -05:00
melex750
b032dad578
Fix execution of default arguments
2017-03-03 01:09:09 -05:00
melex750
92a8c48953
Add syntax for parameters with default values
...
Also fixes #642
2017-01-24 15:19:03 -05:00
melex750
baba6081b3
Add checking for return statements in functions
...
issue #30
2017-01-24 14:41:22 -05:00
melex750
2ff8251a81
Fix game crashing with syntax errors
2017-01-24 13:47:00 -05:00
melex750
8e54f7ca9c
Fix memory leaks in CBOT engine
2017-01-16 21:16:59 +01:00
melex750
64bc1f1afb
Fix constructor/destructor and field syntax
2017-01-16 21:16:59 +01:00
melex750
8fc0151444
Fix increment and decrement syntax
2017-01-16 21:16:59 +01:00
krzys-h
e325efa447
Fix crash after precompiling a CBot class with errors ( #881 )
2016-12-27 13:23:41 +01:00
krzys-h
88c6818cfd
Fix code style issues
2016-11-26 13:48:12 +01:00
krzys-h
b49fbf0cd6
Another this==nullptr fix ( #828 )
2016-11-11 22:58:39 +01:00
krzys-h
48f703282e
Refactor CBotCallMethode -> CBotExternalCall
2016-11-11 21:58:25 +01:00
krzys-h
6b7233c6ae
Remove CBotLinkedList from CBotFunction
...
Fixup for 191151eb7b
No idea how I managed to forget that
2016-11-11 19:47:59 +01:00
krzys-h
191151eb7b
Refactor CBotClass and CBotFunction list to std::list
2016-11-11 19:37:19 +01:00
krzys-h
266b34d578
Make CBotFunction implement CBotLinkedList
2016-11-11 18:16:12 +01:00
krzys-h
8764d28e9e
Remove remaining "this != nullptr" checks in CBOT, closes #828
2016-11-11 18:03:46 +01:00
krzys-h
ca548e2902
Update CBotFieldExpr::ProtectionError docs
2016-09-24 17:04:47 +02:00
melex750
9ab7f7d140
Fix access to protected and private variables
2016-09-17 08:00:34 -04:00
melex750
3debfb9182
Fix finding in-class methods when searching by ID
2016-09-17 07:59:34 -04:00
melex750
4a14a44f3f
Add implicit cast and null for passing arguments
2016-09-17 07:58:39 -04:00
melex750
3146d4ef35
Add method chaining for class constructor calls
2016-08-14 16:56:17 -04:00
krzys-h
b9d4d57e33
Syntax sugar: Accessing members of returned objects ( #808 )
...
Conflicts:
src/CBot/CBotInstr/CBotInstrMethode.h
2016-08-09 20:28:37 +02:00
Jeremy Mickelson
6b8e240d26
Fix implicit downcast with variable initialization
2016-08-07 08:27:01 -04:00
melex750
a205eace38
Add missing license headers
2016-08-06 16:29:02 -04:00
melex750
e48188b429
Fix failed assert when literal null is returned
2016-08-06 04:56:57 -04:00
melex750
fad38cd0e9
Add accessing members to function calls
2016-08-04 03:16:59 -04:00
melex750
c9c02f5461
Fix assigning instance to pointer for inheritance
2016-08-04 01:06:37 -04:00
melex750
d0a8a32a57
Fix RestoreMethode when calling inherited methods
2016-08-03 18:34:39 -04:00
melex750
64157090e6
Fix crash when calling method on a null object
2016-06-24 17:18:11 -04:00
melex750
51665e8396
Fix "new" keyword syntax checking
2016-06-24 17:03:50 -04:00
melex750
66984a4bb3
Fix using compound-assignment with an array
...
...that was initialized in the definition
2016-06-24 17:00:41 -04:00
melex750
0d74b4f36b
Fix initializing an array using variables
...
Resolves a conflict between CBotListArray and CBotExprVar
2016-06-24 16:56:17 -04:00
melex750
37ab015c8d
Fix conversion to string with = operator
2016-05-29 06:55:28 -04:00
melex750
6db2832577
Fix conversion to string with + operator
2016-05-29 06:45:08 -04:00
melex750
0165e8f348
Fix and document TypeCompatible
2016-05-29 06:40:42 -04:00
melex750
6491ce0aa5
Fix passing "this" as an argument to a method
2016-05-24 10:30:20 -04:00
melex750
e7942962d3
Fix checking parameters in CBotFunction
2016-04-19 10:36:06 -04:00
melex750
8b7410f803
Fix class.arrays using size of one before comma
2016-03-21 06:11:55 -04:00
melex750
6be1f56288
Add error code no expression, remove some bad code
2016-03-20 20:55:22 -04:00
melex750
5b3da83715
Fix inline declaration of an array of string
2016-03-20 13:27:02 -04:00
melex750
707ef97626
Fix syntax+type checking, base types+CBotDefArray
2016-03-20 07:54:41 -04:00