boostorg / boostorg/compute

compute/detail/sha1.hpp fails to compile with boost 1.86

Open
#889 27 comments 2 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.7k
Forks
340
PR merge metrics
No merged PRs in 30d

Description

When compiling files that include ``, I see the following error:

```
/home/bredelings/Work/installed-boost-1.86.0/include/boost/compute/detail/sha1.hpp: In member function ‘boost::compute::detail::sha1::operator std::string()’:
/home/bredelings/Work/installed-boost-1.86.0/include/boost/compute/detail/sha1.hpp:41:26: error: cannot convert ‘unsigned int [5]’ to ‘unsigned char (&)[20]’
41 | h.get_digest(digest);
| ^~~~~~
| |
| unsigned int [5]
In file included from /home/bredelings/Work/installed-boost-1.86.0/include/boost/compute/detail/sha1.hpp:18:
/home/bredelings/Work/installed-boost-1.86.0/include/boost/uuid/detail/sha1.hpp:179:43: note: initializing argument 1 of ‘void boost::uuids::detail::sha1::get_digest(unsigned char (&)[20])’
179 | inline void sha1::get_digest(digest_type& digest)
| ~~~~~~~~~~~~~^~~~~~
```

This is because `boost::uuids::detail::sha1::digest_type` has changed from `typedef unsigned int(digest_type)[5];` to `typedef unsigned char digest_type[ 20 ];`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.