Suspicious changes to Serialization
The current Serialization emits the following warning: c:\projects\boost-root\boost\serialization\extended_type_info_typeid.hpp(118) : warning C4700: uninitialized local variable 'ap' used which looks legitimate and is caused by the removal of `va_start(ap, count);` in this commit https://github.com/boostorg/serialization/commit/2805bc3faa8f8fb7ce80ec51815... This looks like a mistake to me, and is probably going to cause problems.
Am 14.03.24 um 01:26 schrieb Peter Dimov via Boost:
removal of `va_start(ap, count);` in this commit
https://github.com/boostorg/serialization/commit/2805bc3faa8f8fb7ce80ec51815...
This looks like a mistake to me, and is probably going to cause problems. Judging from the commit message "removed test dependency on lexical cast" I assume this was an oversight when committing, not an intended change.
There is a related issue about missing a matching `va_end`: https://github.com/boostorg/serialization/issues/264 This looks valid too: "if va_end is not called before a function that calls va_start or va_copy returns, the behavior is undefined." So maybe that removal was part of unfinished work to address that issue. Fortunately it looks like this function is not used by the library itself and that commit didn't make it into master, so it isn't included in the 1.85 release.
On 3/14/24 2:06 AM, Alexander Grund via Boost wrote:
Am 14.03.24 um 01:26 schrieb Peter Dimov via Boost:
removal of `va_start(ap, count);` in this commit
https://github.com/boostorg/serialization/commit/2805bc3faa8f8fb7ce80ec51815...
This looks like a mistake to me, and is probably going to cause problems. Judging from the commit message "removed test dependency on lexical cast" I assume this was an oversight when committing, not an intended change.
There is a related issue about missing a matching `va_end`: https://github.com/boostorg/serialization/issues/264 This looks valid too: "if va_end is not called before a function that calls va_start or va_copy returns, the behavior is undefined."
So maybe that removal was part of unfinished work to address that issue.
Fortunately it looks like this function is not used by the library itself and that commit didn't make it into master, so it isn't included in the 1.85 release.
FWIW - the master test matrix - shows no error due to this issue. https://www.boost.org/development/tests/master/developer/serialization.html Robert Ramey
Robert Ramey wrote:
On 3/14/24 2:06 AM, Alexander Grund via Boost wrote: ...
Fortunately it looks like this function is not used by the library itself and that commit didn't make it into master, so it isn't included in the 1.85 release.
FWIW - the master test matrix - shows no error due to this issue.
https://www.boost.org/development/tests/master/developer/serialization.html
That's because, as pointed out by Alexander, (a) the commit is on develop and not yet on master, and (b) there are no tests exercising the functionality of the BOOST_SERIALIZATION_FACTORY_n macros.
participants (3)
-
Alexander Grund
-
Peter Dimov
-
Robert Ramey