Skip to content

Commit c4e9025

Browse files
committed
fix build system for -fobjc-tao flag
1 parent 8bd494a commit c4e9025

File tree

2 files changed

+76
-6
lines changed

2 files changed

+76
-6
lines changed

RELEASENOTES.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,49 @@
1+
# 4.0.0
2+
3+
4+
5+
feat: improve buffer flexibility and safety
6+
7+
* Breaking changes to buffer length handling
8+
- Save pre-overflow length for safer data extraction
9+
- Integrate length control with zero filling via options
10+
- Change seek parameter order to match standard C
11+
12+
* Enhanced buffer initialization and creation
13+
- Add capacity parameter to `mulle_init`
14+
- Add `_default` variants for simpler allocator handling
15+
- Remove deprecated mulle-flexbuffer functionality
16+
17+
* Improved buffer access control
18+
- Add readonly/writeonly buffer modes with assertions
19+
- Add byte-level operations `(get_byte,` `pop_byte)`
20+
- Fix buffer overflow edge cases
21+
22+
* Build system improvements
23+
- Add CMake package configuration support
24+
- Improve 32-bit compatibility
25+
- Update project version to 4.0.0
26+
27+
* **BREAKING** ``mulle_buffer_zero_to_length`` is now done in ``mulle_buffer_set_length``
28+
* **BREAKING** the length of the buffer before the overflow happened is now saved, so string and data extraction will provide the date before the overflow happened
29+
* **BREAKING** ``mulle_buffer_set_seek`` has change parameter order to match `lseek` and `fseek`
30+
* **BREAKING** mulle-flexbuffer is dead, use mulle-c11 mulle-alloca instead
31+
* **BREAKING** ``mulle_init`` now has a capacity parameter just like the container init functions, maybe use ``mulle_init_default`` instead
32+
* **BREAKING** `mulle-buffer-set-length` now has an `options` argument, which determines zerofilling and size fitting
33+
* new ``_default`` functions like ``mulle_buffer_create_default`` allow the user to leave out an allocator argument, lessening the cognitive load
34+
* `mulle-buffer-do` gains a default `alloca` so you have to do even less work to get better performing code
35+
* mulle-buffer can now be set to readonly or writeonly (in addition to the default read/write)
36+
37+
* mulle-buffer gained readonly and writeonly assertion checks. you can mark a buffer as readonly or writeonly. the default is read/write (no asserts)
38+
39+
*** BREAKING ``_INIT_`` initializers are now called ``_DATA`` to comply with other mulle code
40+
* ``mulle_buffer_get_byte`` does now exist
41+
42+
* added mulle-buffer-pop-byte function
43+
44+
* changed signature type of `_mulle__buffer_copy_range` dst to void *
45+
46+
147
### 3.5.1
248

349
* fix 32 bit problem for mulle-sprintf (special handling of `INT_MAX`)

cmake/share/CompilerDetectionC.cmake

Lines changed: 30 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)