Ross Younger
7bf7a4d744
Fix bare assert in reference_counted_object.h ( #613 )
...
Signed-off-by: Ross Younger <crazyscot@gmail.com>
Signed-off-by: Ross Younger <crazyscot@gmail.com>
2022-10-01 11:30:37 +01:00
David Hebbeker
24ebe3efe8
Replace ETL_COMPILER_ICCAVR by ETL_COMPILER_IAR. ( #602 )
...
The current definition mechanism for ETL_COMPILER_ICCAVR does not work. Both IAR compilers, for ARM and AVR define `__IAR_SYSTEMS_ICC__`. Thus `ETL_COMPILER_TYPE_DETECTED` will be defined in line before ETL_COMPILER_ICCAVR is defined. This switch will never be entered.
Currently I see no reason for differentiating both compilers (`__ICCARM__` and `__ICCAVR__`). The condition for the IAR compiler platform (`__IAR_SYSTEMS_ICC__`) is sufficient (combined with <C++11 detection).
At the moment ETL_COMPILER_ICCAVR is used as a switch condition for using `#pragma push_macro`. But actually IAR ARM and IAR AVR have no such macro defined. ETL_COMPILER_IAR is defined for both compilers. Thus the switch condition is replaced with ETL_COMPILER_IAR.
2022-09-14 11:29:37 +01:00
David Hebbeker
d31f787585
Move __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS before #include <stdint.h>. ( #601 )
...
Macros must be defined before first include of stdint.h. Else they have no effect.
2022-09-14 11:12:47 +01:00
John Wellbelove
e99a1a5845
Attempt to fix clang CI error
2022-09-11 19:50:09 +01:00
John Wellbelove
f8d9eb0f46
Attempt to fix clang CI error
2022-09-11 18:02:27 +01:00
John Wellbelove
0bfe4baa63
Attempt to fix clang CI error
2022-09-11 16:04:15 +01:00
John Wellbelove
23be4cfd02
Attempt to fix clang CI error
2022-09-11 15:41:51 +01:00
John Wellbelove
38458a71e3
Attempt to fix clang CI error
2022-09-11 15:29:51 +01:00
John Wellbelove
bc48b8ac4e
Deleted copy constructors for etl::circular_buffer_ext, etl_indirect_vector and etl::vector to eliminate dangling pointers.
2022-09-11 12:04:28 +01:00
John Wellbelove
f952057508
Added ETL_ENUM_CLASS and ETL_ENUM_CLASS_TYPE macros
2022-09-11 00:59:34 +01:00
John Wellbelove
c953100dd0
Improved etl::span/std::span compatibility
2022-09-11 00:58:22 +01:00
John Wellbelove
7b733f73ad
Minor updates to bitset
...
Added bitset_ext tests to cmake
2022-09-11 00:57:00 +01:00
John Wellbelove
e78e7b474a
Added etl:lsb_mask, etl::make_lsb_mask, etl::msb_mask and etl::make_msb_mask
2022-09-11 00:55:55 +01:00
John Wellbelove
1e7b5887f5
Minor changes
2022-09-09 19:06:23 +01:00
John Wellbelove
435cec705f
Modified order of standard includes
2022-09-09 14:20:24 +01:00
John Wellbelove
737b0bf6f7
#591 Automatically define __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS
2022-09-08 23:00:48 +01:00
John Wellbelove
2d0d744c74
Updated etl::bitset and added etl::bitset_ext
2022-09-08 20:11:20 +01:00
John Wellbelove
7949c09b93
Merge branches 'development' and 'development' of https://github.com/ETLCPP/etl into development
2022-09-08 20:09:04 +01:00
David Hebbeker
1e592b5921
Do not use min/max workaround for ICCAVR. ( #595 )
...
IAR C/C++ Compiler V6.70.1.929 for Atmel AVR does not support push_macro and does neither define macros for min or max.
2022-09-08 16:29:02 +01:00
John Wellbelove
d2e8e0aa71
#594 Use a different workaround for problems with IARCC.
2022-09-07 12:38:30 +01:00
David Hebbeker
63e31068b7
Apply workaround for __has_include(<...>) and ICCAVR. ( #593 )
...
ICCAVR: IAR C/C++ Compiler V6.70.1.929 for Atmel AVR
There seems to be an issue with the ICCAVR compiler and `__has_include(<...>)` syntax:
```
Error[Pe008]: missing closing quote etl\include\etl\placement_new.h 48
Tool Internal Error:
Internal Error: [Front end]: assertion failed at: "..\..\Translator\compiler_core\src\parser\edg\literals.c", line 1159
Internal Error: [Front end]: assertion failed at: "..\..\Translator\compiler_core\src\parser\edg\literals.c", line 1159 etl\include\etl\placement_new.h 48
Error while running C/C++ Compiler
```
Which is weird, as I wonder why `__has_include` is defined in first place. The compiler is supposed to support some dialect of C++98.
Anyhow, `__has_include()` seems to work in general with ICCAVR. And with this change the code compiles well.
2022-09-07 11:15:59 +01:00
John Wellbelove
4b0047a3bb
Updated release information
2022-09-07 11:13:04 +01:00
John Wellbelove
e8cc472ac9
Finished etl::circular_iterator an circular extensions to etl::span
2022-09-06 19:43:01 +01:00
John Wellbelove
dc0ab72e09
circular_span first draft
2022-09-06 10:59:49 +01:00
John Wellbelove
25adb3c68c
Almost finalised circular_iterator and tests
2022-09-04 23:44:51 +01:00
John Wellbelove
2c0f56841e
Almost finalised circular_iterator and tests
2022-09-04 21:05:22 +01:00
John Wellbelove
13a1ce6f8e
Merge branch 'feature/circular_iterator' of https://github.com/ETLCPP/etl into feature/circular_iterator
2022-09-03 13:24:46 +01:00
John Wellbelove
15fd907549
Merge branch 'hotfix/#582-unordered_set-equality-comparison-fails-when-hash-collisions-occur' into development
2022-09-03 11:57:11 +01:00
John Wellbelove
eceaa23f47
#584 unordered_set::const_iterator has incorrect value_type
2022-09-03 11:56:24 +01:00
John Wellbelove
7c5a6e49a1
Fixed unordered container equality tests to match STL
2022-09-02 20:40:17 +01:00
John Wellbelove
0f2b9bb019
Fix non-C++03 code syntax
2022-09-02 15:56:39 +01:00
John Wellbelove
c4b67a2708
Merge branch 'development' of https://github.com/ETLCPP/etl into development
2022-09-02 15:04:23 +01:00
Ilya
818908fb6e
Add minmax_push.h/minmax_pop.h includes ( #589 )
2022-09-02 15:04:01 +01:00
John Wellbelove
b13442823a
Merge branch 'hotfix/#585-etl-result-void-being-unusable-due-to-deleted-default-constructor' into development
2022-09-02 14:06:15 +01:00
John Wellbelove
245fbdeea9
Fixes for etl::result<void, TError>
2022-09-02 14:05:46 +01:00
John Wellbelove
201c1fb918
Merge branch 'hotfix/#583-permit-non-default-constructable-hashes-and-key-equals-in-unordered_map' into development
2022-09-02 13:32:23 +01:00
John Wellbelove
4f5847e189
Updates for unordered maps and sets for an API that better matches the STL
2022-09-02 13:32:00 +01:00
Jesse Li
aab900f002
Permit non-default-constructable hashes and key-equals ( #583 )
...
Co-authored-by: Jesse <jli@planarmotor.com>
2022-09-01 19:41:09 +01:00
John Wellbelove
b00929ef09
Merge branch 'feature/#581-hash-functions-for-enum' into development
2022-09-01 19:26:35 +01:00
John Wellbelove
a48aa15b60
Formatting
2022-09-01 19:16:24 +01:00
Jesse Li
a38a8fc33c
#227 Hash function for enums ( #581 )
...
* #227 Hash function for enums
* Move enum hash definition to bottom, so gcc doesn't complain about it
* Explicitly specify etl hash
Co-authored-by: Jesse <jli@planarmotor.com>
2022-09-01 19:10:35 +01:00
John Wellbelove
f0862971c1
Merge branch 'hotfix/#585-etl-result-void-being-unusable-due-to-deleted-default-constructor' into development
2022-09-01 18:56:46 +01:00
jeremyerdmann
7d7b7633bd
Fixed IAR build warnings in message_packet ( #587 )
...
IAR was tripping up on the syntax, generating warnings. This addresses that per the discussion in #586 .
Co-authored-by: Jeremy Erdmann <jeremy.erdmann@millerwelds.com>
2022-09-01 18:52:34 +01:00
Eyal Abramovitch
927491c763
Fix etl::result<void> being unusable due to deleted default constructor ( #585 )
2022-08-31 12:43:56 +01:00
John Wellbelove
64fa058f6b
Work in progress
2022-08-26 09:49:13 +01:00
John Wellbelove
5aa14f85aa
Revert "Work in progress"
...
This reverts commit b3a77d6f83088a01969a3164373166d14ce36639.
2022-08-26 09:47:05 +01:00
John Wellbelove
b3a77d6f83
Work in progress
2022-08-26 09:40:54 +01:00
John Wellbelove
868329f9e4
Remove redundant include
2022-08-24 11:27:48 +01:00
John Wellbelove
d3d9dbdbcd
#580 numeric_limits<char> redefinition for gnu c++20
2022-08-24 11:27:12 +01:00
John Wellbelove
d9bff52343
added ETL_NODISCARD to binary_search
2022-08-23 19:46:45 +01:00