boostorg / boostorg/multi_array
Return of bug#6554 (Compiler error dereferencing multi_array value via an iterator)
- 主要语言
- C++
- 星标
- 32
- 派生
- 39
- PR 合并指标
- 30 天内没有已合并 PR
描述
The bug described in https://svn.boost.org/trac10/ticket/6554 seems to return. I tried the example from this bug in godbolt: https://godbolt.org/z/4vMf8oo4q and it fails to compile. The code I used is:
```c++
#include
struct data
{
int value;
};
typedef boost::multi_array array_type;
int main() {
array_type a(boost::extents[4][5]);
// ERROR: Cannot compile this line
a.begin()->begin()->value = 7;
// Compiles successfully
(*a.begin()->begin()).value = 5;
return 0;
}
```
All versions of boost on godbolt (1.64 to 1.79) seem to be affected.
贡献指南
这个仓库没有索引到贡献指南
调研方向
Start by reproducing the failing expression from the issue with boost/multi_array.hpp in the linked Godbolt example, then compare it with the dereference form that compiles. Inspect the multi_array iterator path involved in a.begin()->begin()->value. Done means the failing expression compiles and assigns the value as shown, with regression coverage for this example.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- cpp
- 领域
- data
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 48/100