Jason Turner
98c362d038
Properly report which file failed to be loaded
...
closes #437
2018-05-29 07:45:43 -06:00
Jason Turner
145acd378b
Take parse depth to 512, make it templated
...
Closes #442
2018-05-29 07:09:25 -06:00
Jason Turner
f09b2d8731
Update release notes and fix compiler warnings
2018-05-26 20:29:25 -06:00
Jason Turner
61dfb22af8
Merge pull request #439 from AlekMosingiewicz/handle-bom-in-script
...
Handle BOM in the beginning of the script
2018-05-26 14:08:29 -06:00
Jason Turner
805e7c0917
Fix up some error handling
2018-05-25 14:33:17 -06:00
Jason Turner
e0f29e0f7c
Limit parse depth to avoid stackoverflow
2018-05-25 08:34:17 -06:00
Alek Mosingiewicz
b3f77f0c82
Fix implicit conversion warning.
2018-05-25 12:17:22 +02:00
Alek Mosingiewicz
0f67b2f430
Another fix for Clang.
2018-05-25 12:07:50 +02:00
Alek Mosingiewicz
fb635033a9
Fix for Clang.
2018-05-25 11:56:10 +02:00
Alek Mosingiewicz
393f8d31ab
Travis build quick fix.
2018-05-25 11:48:27 +02:00
Alek Mosingiewicz
1711d50eff
Another attempt to remedy the problem occuring on Clang.
2018-05-25 08:38:25 +02:00
Alek Mosingiewicz
42c355a8d0
Revert "Attempt to remedy the problem occuring on Clang."
...
This reverts commit 0e964da42658a4e7e5bebe281f2c125575f34246.
2018-05-25 08:06:35 +02:00
Alek Mosingiewicz
0e964da426
Attempt to remedy the problem occuring on Clang.
2018-05-25 07:59:34 +02:00
Alek Mosingiewicz
51693aa0bd
Skip buffer initialization.
2018-05-25 06:57:22 +02:00
Alek Mosingiewicz
51bb793664
Initialize buffer to store potential BOM data before storing
...
anything inside it.
2018-05-24 22:06:59 +02:00
Alek Mosingiewicz
edadb7aa98
Use readsome instead of reading the stream byte-by-byte to
...
detect BOM in processed file.
2018-05-24 22:04:10 +02:00
Alek Mosingiewicz
ac10575b5f
Read the stream byte by byte, condition for size when skipping BOM.
2018-05-24 21:38:47 +02:00
Alek Mosingiewicz
4ada12a34c
Check EOF rather than buffer_size when skipping BOM.
2018-05-23 18:41:07 +02:00
Alek Mosingiewicz
f9615efea5
Another text size assertion.
2018-05-22 16:27:19 +02:00
Alek Mosingiewicz
d880d46214
Type cast fix.
2018-05-22 16:23:22 +02:00
Alek Mosingiewicz
be29b0a193
Merge branch 'develop' into handle-bom-in-script
2018-05-22 05:00:41 +02:00
Alek Mosingiewicz
60c0a0bf15
Refactor skippable BOM detection.
2018-05-21 17:04:33 +02:00
Alek Mosingiewicz
0d44b0b456
Added doc comment.
2018-05-15 19:32:17 +02:00
Alek Mosingiewicz
322568ba39
Check for illegal characters while parsing input.
2018-05-15 19:25:28 +02:00
Alek Mosingiewicz
c09af92963
Decrement file size when BOM is present to avoid parsing errors.
2018-05-13 13:09:38 +02:00
Alek Mosingiewicz
a024db040d
Catch BOM at the beginning of file.
2018-05-13 12:24:34 +02:00
Alek Mosingiewicz
efbebee9da
Throw exception when user-provided input contains BOM.
2018-05-13 10:25:04 +02:00
Alek Mosingiewicz
f37d0e13d3
Skip UTF-8 BOM before parsing begins.
2018-05-10 17:44:06 +02:00
Jason Turner
06191646d2
Merge pull request #418 from ChaiScript/apply_unicode_patches
...
Apply unicode patches
2018-05-08 09:08:25 -06:00
Tomas Zeman
3dec2af071
Fix potential conversion warning on some platforms
2018-03-09 10:19:33 +01:00
Stan
be5709ab5c
Add support for chained dot calls.
2018-03-04 22:49:36 +01:00
Jason Turner
476a752a08
Fix last merge
2018-03-02 15:09:52 -07:00
Jason Turner
2818ec67df
Merge remote-tracking branch 'origin/develop' into apply_unicode_patches
2018-03-02 15:01:41 -07:00
Jason Turner
1a9165f7fc
Normalize on C++'s standards for \u and \U
2018-03-02 07:45:24 -07:00
Jason Turner
1b9027a24f
Fix handling of 32 bit unicode character escapes
2018-03-01 17:03:50 -07:00
Jason Turner
81ebe1a7be
Fix the compiler warnings related to unicode parsing
...
Re #415
2018-03-01 13:40:49 -07:00
Jason Turner
1acfb4f7b8
Apply patch from @chris0e3
2018-03-01 11:22:20 -07:00
Jason Turner
1c5c34561b
Merge pull request #388 from arcoRocks/patch-2
...
Fix for #387
2018-02-02 21:34:12 -07:00
Jason Turner
35af4edb30
Ignore some warnings from clang++
2018-02-02 21:04:21 -07:00
Jason Turner
0c32c5054c
Add clarification on use-after-move
2018-01-19 13:01:44 -07:00
Jason Turner
cb30a97832
Workaround for /permissive- on MSVC
...
Addresses #403
2018-01-19 13:01:05 -07:00
Jason Turner
eb93760f1b
Fix building on MSVC in C++17 mode
...
Closes #403 #396 #395
2018-01-19 10:26:31 -07:00
Jason Turner
6bfc130b73
Fix pull from develop, fix gcc warnings
2017-12-16 11:50:32 -07:00
Jason Turner
cd05b1f750
Merge branch 'develop' into best_practices
2017-12-16 10:22:25 -07:00
arcoRocks
f6ffcd9481
Fix for #387
2017-12-04 13:41:59 +01:00
Jason Turner
56140608ef
Fix scope optimizations for ranged for and refs
...
Closes #383
2017-11-30 10:06:32 -07:00
Jason Turner
035319bbd0
Fix "compiled loop" optimization
2017-11-26 22:31:35 -07:00
Jason Turner
6ae3f2d187
Merge remote-tracking branch 'origin/develop' into best_practices
2017-11-21 16:28:12 -07:00
Jason Turner
903454bf05
Merge pull request #290 from stephenberry/develop
...
Adding basic namespace handling
2017-11-21 16:27:40 -07:00
Jason Turner
f462796ee5
Add clone shortcircuit for strings
2017-11-21 16:17:53 -07:00
Jason Turner
8b523c73b8
Merge remote-tracking branch 'origin/develop' into best_practices
2017-11-21 15:34:04 -07:00
Jason Turner
f37bb847c7
Merge remote-tracking branch 'origin/c++17' into best_practices
2017-11-21 14:59:04 -07:00
Jason Turner
fdddba1e00
Merge pull request #355 from bogemic/pvs-studio-warnings-v728
...
fixed PVS-Studio warnings V728
2017-11-21 14:51:56 -07:00
Jason Turner
8307663938
Look for and optimize decl assignments
...
Re: #356
2017-11-21 10:26:58 -07:00
Jason Turner
50a2773081
Reduce cost of cloning common built in types
...
Re: #356
2017-11-21 09:01:17 -07:00
Jason Turner
c6021f3e61
Bug fix from Function_Params refactor
2017-11-19 06:20:27 -07:00
Jason Turner
92ae85c3e8
Remove guards from catch blocks
2017-11-18 19:08:14 -07:00
Jason Turner
a6d30baa27
Apply some if constexpr action
2017-11-17 06:12:50 -07:00
Jason Turner
b03b90dee6
Fix bug introduced with Function_Params refactor
2017-11-17 05:26:24 -07:00
Jason Turner
28a59d2a6e
Avoid creating vectors when possible
2017-11-16 09:10:48 -07:00
Jason Turner
15196af5d6
Remove one case of UB union work
2017-10-02 09:52:51 -06:00
Mario Lang
f54aa90736
Use using
2017-09-25 16:55:18 +02:00
Jason Turner
8e590387f1
Merge branch 'constexpr' into c++17
2017-09-20 17:05:31 -06:00
Jason Turner
6cae70c208
Move to module level statics from function level
2017-09-20 16:44:32 -06:00
Jason Turner
c5a9cab3dd
Simple cleanup for string comparisons
2017-09-20 15:34:19 -06:00
Jason Turner
e38b05ff9a
Better constexpr for comment types
2017-09-10 07:12:33 -06:00
Stephen Berry
ff78d31583
Simplified namespace handling code and requiring all namespace registration to allow for delayed generation. This simplifies generating namespaces by the user and leads to more efficient code.
2017-09-05 13:26:55 -05:00
Stephen Berry
a9fc1d492e
Merge branch 'develop' of https://github.com/ChaiScript/ChaiScript into develop
2017-09-05 12:13:29 -05:00
Stephen Berry
3f299333cc
Switched to recursive mutex
...
Removed namespaces_nested_ref.chai
2017-09-05 12:02:11 -05:00
Jason Turner
bfe7799d13
Come C++17 updates, namespaces, etc
2017-09-02 13:12:52 -06:00
Jason Turner
4213f24761
Various C++17 considerations
2017-08-29 16:14:44 -06:00
Jason Turner
e6a6a20eb6
Handful for C++17 things
2017-08-26 08:24:55 -06:00
Jason Turner
4275ec6878
Make it easier to swap around some hashing algorithms
2017-08-25 15:31:24 -06:00
Jason Turner
dce9e17c34
More string_view tweaks
2017-08-25 14:49:44 -06:00
Jason Turner
e49df4c54d
Move the parser to string_view
2017-08-25 11:17:47 -06:00
Jason Turner
dd918c524d
Use if constexpr in boxed_number
2017-08-23 20:20:17 -06:00
Jason Turner
b8b548bab3
more constexpr for parser
2017-08-23 16:10:10 -06:00
Jason Turner
ac8f876347
constexpr fixes for Visual Studio
2017-08-22 12:02:42 -06:00
Jason Turner
535c0344b7
Make function constexpr
2017-08-20 13:11:57 -06:00
Jason Turner
ddb2f352cd
Initial simple application of constexpr to API
2017-08-17 11:27:14 -06:00
Jason Turner
58f740844d
Undo perf hit to keyword lookups
2017-08-15 13:17:23 -06:00
Jason Turner
0fc420f69d
Revert "Remove exception specification shared_ptr use"
...
This reverts commit e1cf8b9eb1d59d49149454424ec49bd0d8a3b28f.
2017-08-15 10:13:20 -06:00
Jason Turner
1ca857b890
Satisfy older clangs by adding default ctor
2017-08-11 14:20:17 -06:00
Jason Turner
710b3c4003
Fix instantiation of Static_String for older compilers
2017-08-11 08:57:44 -06:00
Jason Turner
73d543eef0
Make operator lookup noexcept
2017-08-10 20:32:39 -06:00
Jason Turner
5ba155e058
Make operators noexcept (removing std::vector usage)
2017-08-10 19:52:32 -06:00
Jason Turner
5d56051532
Various noexcept additions
2017-08-10 19:47:03 -06:00
Jason Turner
e1cf8b9eb1
Remove exception specification shared_ptr use
2017-08-10 10:28:16 -06:00
Jason Turner
3f8b697e9e
Fix windows noexcept build
2017-07-23 07:38:20 -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
ef333e491a
remove existing constexpr
2017-07-20 21:16:54 -06:00
Jason Turner
f465d2ceca
Make sure to not deref null parse node
2017-07-20 06:10:31 -06:00
Jason Turner
f03659c865
More careful testing of 'for' parses
2017-07-19 13:19:36 -06:00
Jason Turner
cfb2e663d3
Fix unhandled exception found via libfuzzer
2017-07-19 10:09:44 -06:00
Jason Turner
ea03a5462f
Wrap up build issues for dropping of shared_ptr
2017-07-18 16:58:09 -06:00
Mike Bogdanov
0c31d81711
fixed PVS-Studio warnings V728
2017-07-13 12:41:23 +03:00
Jason Turner
77315ae4b9
Fix non-shared_ptr tree code
2017-06-22 09:32:49 -06:00
Jason Turner
5a5600914c
Move away from shared_ptr for parse nodes
2017-06-21 21:27:48 -06:00
Jason Turner
bd736eddec
Deprecate GLOBAL #247
2017-05-30 11:33:12 -06:00
Jason Turner
0f9d9cae4a
Merge pull request #332 from ftk/develop
...
Ability to disable module loading support at compile time
2017-03-21 12:55:30 -07:00