Patrick Pelissier
16c6a13fb1
Make string functions exception aware
2024-04-22 23:41:23 +02:00
Patrick Pelissier
9382cdc0f7
Improve exception integration tests
2024-04-22 23:00:04 +02:00
Patrick Pelissier
ced2719760
Make string functions exception aware
2024-04-22 22:59:54 +02:00
Patrick Pelissier
1798530284
Fix issue in string_fgets
...
where it could be blocked infinity in the parsing
2024-04-22 22:51:59 +02:00
Patrick Pelissier
68f890a015
Improve exception integration tests
2024-04-22 22:47:11 +02:00
Patrick Pelissier
5805038943
Make string functions exception aware
2024-04-22 22:47:00 +02:00
Patrick Pelissier
2395ceb3d2
Remove obsolete and undocumented STRING_DECL_INIT macro
2024-04-20 00:42:38 +02:00
Patrick Pelissier
2b455c5c6b
Fix test issue in C++
2024-04-20 00:42:07 +02:00
Patrick Pelissier
d466e76702
Factorize common test function
2024-04-13 08:19:05 +02:00
Patrick Pelissier
9d33c85e13
Fix issue in _push_front_new
...
Make list services compatible with exception
2024-04-13 08:02:07 +02:00
Patrick Pelissier
4e24e7a533
Improve exception integration tests
2024-04-13 08:01:36 +02:00
Patrick Pelissier
0914c26b8d
Update test suite
...
testing more functions in exception scenario
2024-04-11 01:00:06 +02:00
Patrick Pelissier
c245285123
Make more array/list functions exception aware
2024-04-11 00:55:47 +02:00
Patrick Pelissier
be4ff6f94d
Make list functions exception aware
2024-04-08 23:12:23 +02:00
Patrick Pelissier
aa055d0b00
Add tests for exception + lists
2024-04-08 23:10:14 +02:00
Patrick Pelissier
e7d6e0d6ac
Generate dependency for new files
2024-04-08 23:08:39 +02:00
Patrick Pelissier
8f97a194ae
Add m_volatile
2024-04-08 23:08:16 +02:00
Patrick Pelissier
b191baec8b
Make array functions exception aware
2024-04-06 19:14:36 +02:00
Patrick Pelissier
e4a85cdc61
Add tests for exception+array
2024-04-06 19:13:38 +02:00
Patrick Pelissier
12ee3213b0
Simplify M_ON_EXCEPTION / M_IF_EXCEPTION
2024-04-06 19:13:08 +02:00
Patrick Pelissier
6cba7ad8ba
Update
2024-04-06 19:12:35 +02:00
Patrick Pelissier
955c8bfb81
Adding new example of generic
2024-04-04 22:35:08 +02:00
Patrick Pelissier
8602a259fd
Adding let & print as synonymous in m-generic mode
2024-04-04 22:31:27 +02:00
Patrick Pelissier
7404e63b53
Fix C++ / G++ introduced issue
2024-03-31 22:22:41 +02:00
Patrick Pelissier
c539eb57b7
Prepare exception aware integration
2024-03-31 21:55:02 +02:00
Patrick Pelissier
3c4943015b
Fix introduced issue with TCC
2024-03-27 00:28:06 +01:00
Patrick Pelissier
c9fef6d80a
Fix issues in reworked lock:
...
* starving of writer threads by reader threads
* monopolization of memory bus by reader threads.
2024-03-26 23:11:57 +01:00
Patrick Pelissier
5174781a7a
Improve internal backoff to perform
...
lazy initialization of the seed.
2024-03-26 23:11:03 +01:00
Patrick Pelissier
7bf9f6a377
Update comments
2024-03-26 22:47:13 +01:00
Patrick Pelissier
7575681e27
Rewrite Read / Write lock to be less costly
2024-03-26 22:41:41 +01:00
Patrick Pelissier
cfab3cf0cf
Add m_mutex_trylock function
2024-03-26 22:41:04 +01:00
Patrick Pelissier
a523a97a0e
Update doc
2024-03-18 22:44:53 +01:00
Patrick Pelissier
6f75bb938b
Update doc
2024-03-18 22:32:16 +01:00
Patrick Pelissier
a22046bc2a
Update doc
2024-03-15 14:40:47 +01:00
Patrick Pelissier
84ee15b2e7
Remove workaround
...
This header is already quite demanding on compiler compliance , so there is no need to implement workaround for old compilers.
2024-03-15 14:40:36 +01:00
Patrick Pelissier
fd6a8f1361
Update doc
2024-03-14 23:27:23 +01:00
Patrick Pelissier
d22e75d7a0
Make I/O functions exception aware.
...
Simplify their logic
Fix other bugs.
2024-03-08 00:15:08 +01:00
Patrick Pelissier
ca25dfb537
Add missing TYPE operator name in the error message if it is missing in the oplist
2024-02-27 01:12:29 +01:00
Patrick Pelissier
e2159109b3
Update analysis of issues
2024-02-24 12:17:30 +01:00
Patrick Pelissier
cc6bdbf06c
Add missing method name in the error message
...
if the method is missing.
2024-02-23 22:52:05 +01:00
PpHd
cd37efc69d
Merge pull request #115 from derskythe/feat-styled-readme
...
Refine explanations and improve formatting in README.md
2024-02-08 13:32:47 +01:00
Patrick Pelissier
d7a232364f
Update infrastructure to the fact that the bench directory has been deleted
2024-01-19 22:27:33 +01:00
Patrick Pelissier
f7580e7ce9
Move bench directory to https://github.com/P-p-H-d/c-stl-comparison
...
since it is better to have the comparison centralized in one place.
2024-01-19 21:53:20 +01:00
Patrick Pelissier
26cec1591a
* Remove some obsolete macros
...
* Fix spelling
* A little bit of refactoring
2024-01-19 21:37:47 +01:00
Patrick Pelissier
52b58c5a51
Happy new year 2024
2024-01-19 21:37:47 +01:00
Patrick Pelissier
8902a752f5
Migrate to V0.7.2
2023-12-31 13:02:42 +01:00
PpHd
3445da13f3
Merge generic interface (WIP)
2023-12-31 12:53:10 +01:00
Patrick Pelissier
127530abaa
Fix format
2023-12-30 16:27:25 +01:00
Patrick Pelissier
ed0f538fb7
Add documentation of generic interface
2023-12-30 16:23:02 +01:00
Patrick Pelissier
76ef061dec
Add basic example of generic interface
2023-12-30 16:23:02 +01:00
Patrick Pelissier
c98786a3b3
Update TODO items
2023-12-30 16:23:02 +01:00
Patrick Pelissier
422f3c2c04
Add GENTYPE operator to all oplists
2023-12-30 16:23:02 +01:00
Patrick Pelissier
5ceb34d980
Cosmetics changes
2023-12-30 16:23:02 +01:00
Patrick Pelissier
73e3d1d1bd
Register string_t globally
2023-12-30 16:23:02 +01:00
Patrick Pelissier
044a085fb6
Fix support for pop generic macro function
2023-12-30 16:23:02 +01:00
Patrick Pelissier
5344423ad9
Reorder header / comment
2023-12-30 16:23:02 +01:00
Patrick Pelissier
76ea989865
Fix warnings
2023-12-30 16:23:02 +01:00
Patrick Pelissier
29c4ba3dcc
Add support for M_PRINT
2023-12-30 16:23:02 +01:00
Patrick Pelissier
42184f69db
Disable generic tests for TCC
2023-12-30 16:23:02 +01:00
Patrick Pelissier
fb8bf65233
Worlaround for warning with clang
2023-12-30 16:23:02 +01:00
Patrick Pelissier
1d86e51f4a
Improve test suite
2023-12-30 16:23:02 +01:00
Patrick Pelissier
53c35a22d7
First version of Generic header
2023-12-30 16:23:02 +01:00
Patrick Pelissier
722737d60c
Add M_QUAD internal macros
2023-12-30 16:23:02 +01:00
Patrick Pelissier
f951a947ec
Adding a try catch example
2023-12-30 13:42:47 +01:00
Patrick Pelissier
d9401371a6
Fix warnings reported by CLANG,
...
the C warning generator.
2023-12-23 13:16:42 +01:00
Patrick Pelissier
690fd72c8b
Fix documentation
2023-12-23 11:24:25 +01:00
Patrick Pelissier
d318493c6c
Remove M_PRINT_ARG macro to simplify maintenance
...
(M_FPRINT_MACRO with stdout can be used instead)
2023-12-22 23:46:07 +01:00
Patrick Pelissier
fecece19cb
Add retry for TCC due the random segfault it generates
2023-12-22 23:45:39 +01:00
Patrick Pelissier
ea640482a7
Add new examples with custom allocation
2023-12-20 19:25:27 +01:00
Patrick Pelissier
3e558af559
Remove unused function
2023-12-20 19:24:57 +01:00
Patrick Pelissier
91a602f774
Add bench of boost unordered flat hashmap
2023-12-19 20:58:02 +01:00
Patrick Pelissier
6a5c136c72
Complete bench-verstable with bench on big structure
2023-12-13 19:35:08 +01:00
Patrick Pelissier
e50fdc82ef
Add benchmark for verstable
2023-12-12 23:59:17 +01:00
Patrick Pelissier
ec0a082701
Update ISSUE
2023-12-12 22:57:13 +01:00
Patrick Pelissier
7bf3ea3a87
Update Function Object interface
...
to make interface trivially copiable
There is no need to perform a copy-protected type as there is no init/clear for this type.
It is always created through an instance.
2023-12-09 12:40:45 +01:00
Patrick Pelissier
15492394ad
Update list of exported files
2023-12-08 20:58:47 +01:00
Patrick Pelissier
09f40b5695
Fix format
2023-12-08 20:58:33 +01:00
Patrick Pelissier
eabfcd1d49
Update list of ignored files
2023-12-08 00:25:53 +01:00
Patrick Pelissier
00aeafc616
Update comments
2023-12-06 23:55:11 +01:00
Patrick Pelissier
f512051807
Migrate to actions/checkout@v4
2023-12-06 23:52:04 +01:00
Patrick Pelissier
4e8b929da9
Migrate to vmactions/freebsd-vm v1
2023-12-06 23:51:40 +01:00
Patrick Pelissier
5841f936e6
Work around static analyzer
...
that raise an issue on freeing non heap pointer
2023-12-02 13:48:21 +01:00
Patrick Pelissier
2ee40339b0
Using emplace to generate init_with for shared_ptr:
...
Equivalent to C++ make_shared)
2023-12-02 13:21:45 +01:00
Patrick Pelissier
0c8eca893d
Add example of REST client
...
by using libcurl for HTTP connection
and M*LIB for JSON formating.
2023-11-25 13:33:27 +01:00
Patrick Pelissier
b16048a55b
Add test cases for tuple emplace
2023-11-25 13:32:57 +01:00
Patrick Pelissier
9dc582c6bc
Add emplace set functions for tuple
2023-11-25 13:30:08 +01:00
Patrick Pelissier
1df8bf84fb
Fix oplist definition for tuple.
...
The oplist didn't include as many sub-oplists as the number of variables.
2023-11-25 13:29:48 +01:00
Patrick Pelissier
e017a90e5c
Fix format
2023-11-04 19:28:32 +01:00
Patrick Pelissier
58b317b759
Add timeout for run in VM
2023-11-04 18:50:43 +01:00
Patrick Pelissier
3a057fc319
M_STATIC_ASSERT: provide expression compatible
...
macro even in pure C11 mode
(Remove GCC extension)
Add M_OPL_AS_STR to display the oplist conditionnaly as the generated string may be too big for some compilers.
Translate some M_STATIC_FAILURE into M_STATIC_ASSERT
as M_STATIC_FAILURE is not an expression whereas M_STATIC_ASSERT is an expression.
2023-11-04 18:48:13 +01:00
Patrick Pelissier
703ab6ff9c
Update examples
2023-11-04 18:48:13 +01:00
Patrick Pelissier
f7f5db61d3
Fix formatting
2023-11-01 11:13:54 +01:00
Patrick Pelissier
32b00eb433
Add new operator GENTYPE
2023-10-21 19:05:08 +02:00
Patrick Pelissier
796f2619e5
Change M_BY_NARGS semantics:
...
simplify suffix by __ # NARGS
instead of __NARGS_ # NARGS
Driver: reduce macro name length.
2023-10-20 00:02:38 +02:00
Patrick Pelissier
268192138a
WIP M_ON_EXCEPTION
2023-10-19 22:54:51 +02:00
Patrick Pelissier
0671a2ea41
Update doc
2023-10-15 22:21:12 +02:00
Patrick Pelissier
07dce84e51
Tuple init: handle case of exception
...
during construction of tuple
2023-10-14 20:15:14 +02:00
Patrick Pelissier
5f4303624f
Adding macro M_CHAIN_OBJ
2023-10-14 15:55:59 +02:00
Patrick Pelissier
19e61467d5
Adding tuple generation
...
for analysis of generated code.
2023-10-14 15:31:37 +02:00
Patrick Pelissier
1454bcebe4
Add unique name identifier
...
in order to avoid Wshadow warning
in generated code.
2023-10-14 15:30:57 +02:00