Jason Turner
c19705da5d
Merge remote-tracking branch 'origin/c++17' into develop
2018-05-29 13:21:09 -06:00
Jason Turner
2d762c8be3
Update copyrights to 2018
2018-05-29 11:51:15 -06:00
Mario Lang
f54aa90736
Use using
2017-09-25 16:55:18 +02:00
Jason Turner
ac78e978fe
Move to template type deduction for function signature
2017-08-26 14:19:38 -06:00
Jason Turner
7722841294
More if constexpr work
2017-08-23 21:23:18 -06:00
Jason Turner
3feb084438
constexpr user_type objects
2017-08-22 22:22:47 -06:00
Jason Turner
5d56051532
Various noexcept additions
2017-08-10 19:47:03 -06:00
Jason Turner
34534c1386
Changes that noexcept want to happen
2017-08-08 17:06:36 -06:00
Jason Turner
7f6f1d8a59
Fix clang warnings, fix misplaced noexcept
2017-07-31 16:12:16 -06:00
Jason Turner
e07cd88659
Add noexcept where appropriate
...
This modifies no logic, it simply adds the keyword `noexcept`
I believe this is 100% correct. It calls methods that are not
guaranteed to be `noexcept`, such as `operator[]` but have
no logically way of throwing.
2017-07-22 20:33:30 -06:00
Jason Turner
f465d2ceca
Make sure to not deref null parse node
2017-07-20 06:10:31 -06:00
Jason Turner
5a5600914c
Move away from shared_ptr for parse nodes
2017-06-21 21:27:48 -06:00
Jason Turner
064a385a64
Merge branch 'develop' of github.com:ChaiScript/ChaiScript into develop
2017-02-22 15:56:04 -07:00
Jason Turner
283785faaf
Add PVS Studio and address some issues it found
2017-02-22 15:18:56 -07:00
Jason Turner
87f1242ed4
Update copyrights to 2017
2017-02-15 15:55:40 -07:00
Jason Turner
f79de06e0b
Change comment format
2016-12-06 13:42:58 -07:00
Jason Turner
cee57f998a
Allow conversions while calling chaiscript funcs
...
* This puts ChaiScript funcs more on even footings with
C++ defined funcs
* Minor performance hit (0.5%)
2016-12-06 13:05:17 -07:00
Jason Turner
28122f7cb0
Fix single parameter constructors found by cppcheck
2016-10-28 15:49:40 -06:00
Jason Turner
b1f1803759
Some cleanups found by clang's analyzer
2016-10-28 14:53:01 -06:00
Jason Turner
b2907fc608
Merge branch 'release-5.x' into develop
2016-10-05 15:14:58 -06:00
Jason Turner
4b81a24a0a
Fix numeric mixed-convesion operations
2016-09-24 17:15:17 -06:00
Jason Turner
5b78d5a898
Make optimizer pluggable
2016-04-23 20:22:17 -06:00
Jason Turner
647f8842fd
Optimize dispatch for perfect match case
2016-04-20 09:20:38 -06:00
Jason Turner
32bd936a18
Remove 'annotation' feature
2016-04-16 07:52:39 -06:00
Jason Turner
1a42614441
Remove unnecessary code
2016-04-15 23:02:42 -06:00
Jason Turner
6fa83bca85
Remove Do_Call helper class
2016-04-15 15:31:19 -06:00
Jason Turner
7dcd6b8447
Implement member pointer value support
...
closes #245
2016-03-12 22:04:01 -07:00
Jason Turner
cd1b3f8887
Virtual / override / public cleanups
2016-03-11 09:24:00 -07:00
Jason Turner
b5b6e5a5a3
Drop ifdef'd code for gcc4.6 and msvc12
2016-03-04 11:15:39 -07:00
Jason Turner
e024b99b36
Fixes for type_conversion handling
2016-02-16 08:29:01 -07:00
Jason Turner
ed65ad72d0
Update copyrights
2016-02-14 20:04:17 -07:00
Jason Turner
7ba7b81a5c
Implement option explicit for dynamic objects.
...
Closes #218
2015-10-16 21:41:54 -06:00
Jason Turner
5a651e2b8a
Fix numeric overload resolution
...
Closes #209
2015-10-01 09:56:53 -06:00
Jason Turner
8931346230
Eradicate internal exceptions during object clone
2015-08-01 13:47:25 -06:00
Jason Turner
1f72afc8f5
Add crashes and fixes found during fuzzy testing
...
* Let unhandled exceptions propogate to user
* Report eval_error when break statement is not in loop
* Fix handling of 0 length scripts closes #193
* Don't crash on arity mismatch - Specifically affects the case where no overloads exist for a given function
* Fix error printing for `bind` calls
* Handle unexpected continue statement
* Check arity during bind
* Don't allow arith conversion on variadic function
* Correct `bind` parameter match count
* Add in expected Boxed_Value exception cases
* Check access to AST, don't allow `;` in func def
* Don't attempt arithmetic unary & call
* Don't crash on 0 param call to `bind`
* Catch errors during member function dispatch
* Properly handle type of const bool &
2015-07-16 12:51:50 -06:00
Jason Turner
b9875e2844
Miscellaneous performance tweaks
2015-06-28 13:20:20 -06:00
Jason Turner
b53432cf28
Remove remaining uses of std::function
2015-06-23 13:02:43 -06:00
Jason Turner
3eb7700912
Add missing <iterator>
2015-06-20 07:45:00 -06:00
Jason Turner
2870874d91
Fix clang build errors
2015-06-20 06:53:23 -06:00
Jason Turner
a147278a7e
Fix debug builds
2015-06-19 20:59:40 -06:00
Jason Turner
b7eb469ac1
Move to some standard algorithms
2015-06-19 14:57:54 -06:00
Jason Turner
bcf573cf26
Don't loop over already filtered functions
2015-06-19 14:23:08 -06:00
Jason Turner
1bf4170d8f
Simplify dispatch
2015-06-19 11:47:16 -06:00
Jason Turner
68fa049d6c
Fix g++4.6 build
2015-06-10 19:26:21 -06:00
Jason Turner
f9e0193353
Add map .at method from c++11
...
closes #184
2015-06-10 18:41:50 -06:00
Jason Turner
ba492308f4
Move from multimap to sorted vector in dispatch
2015-06-08 15:19:32 -06:00
Jason Turner
e0234d942e
Various cleanups and fixes for older compilers
2015-05-22 19:40:56 -06:00
Jason Turner
df724b5c33
Completely remove Proxy_Function_Impl
2015-05-22 12:13:49 -06:00
Jason Turner
48933bc32c
Use std::ref to make free functions callable
2015-05-22 10:28:28 -06:00
Jason Turner
03143a9f83
Phase one of getting rid of std::function usage
2015-05-22 09:30:42 -06:00