boostorg / boostorg/type_traits

Unable to use type_traits with Intel Compiler 16 (boost 1.67+)

Open
#138 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
66
Forks
87
PR merge metrics
No merged PRs in 30d

Description

Source Code:
```
#include
#include
#include

float getSomeNumber()
{
return 10.0;
}

int main(int argc, char** argv)
{
std::string mystring("Hello: " + boost::lexical_cast(getSomeNumber());
std::cout << mystring << std::endl;
return 0;
}
```

Intel Compiler 16:
```
/boost/1.67.0/include/boost/type_traits/is_complete.hpp(45): warning #70: incomplete type is not allowed

ok_tag check_is_complete(int);
detected during ....
...

/boost/1.67.0/include/boost/type_traits/is_complete.hpp(51): error: template instantiation resulted in unexpected function type of "boost::detail::ok_tag<1U> (int)" (the meaning of a name may have changed since the template declaration -- the type of the template is "boost::detail::ok_tag (int)")
...

detected during:
instantiation of "boost::detail::check_is_complete" based on template argument at line 51
instantiation of class "boost::is_complete [with T=void]" at line 484 of "/Path/to/boost/include/boost/type_traits/is_convertible.hpp"
...
instantiation of "Target boost::lexical_cast(const Source &) [with Target=std::string, Source=float]" at line 11 of "boostTest.cc"
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.