boostorg / boostorg/bimap

operators.hpp(154,1): fatal error C1001: Internal compiler error

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

Description

Hi

I am migrating to VS2019, boost Release 1.70.0
C++ Language Standard ISO C++ 14
C Language Standard: Default (Legacy MSVC)

**********************************************************************
** Visual Studio 2019 Developer Command Prompt v16.9.4
** Copyright (c) 2021 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64_x86'

C:\Windows\System32>cl /?
Microsoft (R) C/C++ Optimizing Compiler Version 19.28.29914 for x86

**### The Error**
1>C:\Dev\Prj\3rdParty\boost\boost\operators.hpp(154,1): fatal error C1001: Internal compiler error.
1>(compiler file 'msc1.cpp', line 1588)
1> To work around this problem, try simplifying or changing the program near the locations listed above.
1>If possible please provide a repro here: https://developercommunity.visualstudio.com
1>Please choose the Technical Support command on the Visual C++
1> Help menu, or open the Technical Support help file for more information
1>C:\Dev\Prj\3rdParty\boost\boost\operators.hpp(134): message : see reference to class template instantiation 'boost::operators_impl::equality_comparable2' being compiled
1> with
1> [
1> T=boost::serialization::version_type,
1> U=unsigned int,
1> B=boost::operators_impl::operators_detail::empty_base
1> ]
1>C:\Dev\Prj\3rdParty\boost\boost\operators.hpp(414): message : see reference to class template instantiation 'boost::operators_impl::less_than_comparable2>' being compiled
1> with
1> [
1> T=boost::serialization::version_type,
1> U=unsigned int,
1> B=boost::operators_impl::operators_detail::empty_base
1> ]
1>C:\Dev\Prj\3rdParty\boost\boost\operators.hpp(161): message : see reference to class template instantiation 'boost::operators_impl::totally_ordered2>' being compiled
1> with
1> [
1> T=boost::serialization::version_type
1> ]
1>C:\Dev\Prj\3rdParty\boost\boost\operators.hpp(145): message : see reference to class template instantiation 'boost::operators_impl::equality_comparable1' being compiled
1> with
1> [
1> T=boost::serialization::version_type,
1> B=boost::operators_impl::totally_ordered2>
1> ]
1>C:\Dev\Prj\3rdParty\boost\boost\operators.hpp(420): message : see reference to class template instantiation 'boost::operators_impl::less_than_comparable1>' being compiled
1> with
1> [
1> T=boost::serialization::version_type,
1> B=boost::operators_impl::totally_ordered2>
1> ]
1>C:\Dev\Prj\3rdParty\boost\boost\serialization\serialization.hpp(61): message : see reference to class template instantiation 'boost::operators_impl::totally_ordered1>>' being compiled
1> with
1> [
1> T=boost::serialization::version_type
1> ]
1>INTERNAL COMPILER ERROR in 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.28.29910\bin\HostX86\x86\CL.exe'
1> Please choose the Technical Support command on the Visual C++
1> Help menu, or open the Technical Support help file for more information

The error is in this part ;

```
template >
struct equality_comparable2 : B
{
friend bool operator==(const U& y, const T& x) { return x == y; }
friend bool operator!=(const U& y, const T& x) { return !static_cast(x == y); }
friend bool operator!=(const T& y, const U& x) { return !static_cast(y == x); }
};
```

Any help please ?????

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the VS2019 C1001 error with Boost 1.70.0 and the reported C++14 settings. Inspect boost/operators.hpp around lines 134, 154, 161, 414, and 420, together with boost/serialization/serialization.hpp line 61, using the version_type instantiation shown. Done means the failure is reproduced and a confirmed diagnosis, fix, or workaround is documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.