Added explicit casts to malloc usages in order to fix compilation on C++ #338
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When compiling this Argon2 lib in a C++ project, the compilation fails due to illegal conversions from
void*
(whatmalloc(size_t)
returns) touint8_t*
- this is perfectly valid in C (and don't get me wrong, I love C just as much as everyone else) but it's a non-ignorable error in C++.Since you put
inside
argon2.h
I thought I'd open this pull request, because it makes no sense to hint C++ friendliness with thatextern "C"
if compilation then fails in C++ due to implicit pointer type conversions.My idea here would be to
#ifdef _cplusplus
block at the top of the header file to avoid confusion for C++ devs interested in using this libraryKindest regards, and have a happy and successful new year! :D