boostorg / boostorg/lambda

Compilation error with c++17 (GCC) or higher.

オープン
#26 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
20
フォーク
42
PR マージ指標
30日以内にマージされた PR はありません

説明

template
void do_something_to_all(_Can& __can, const _Predicate& __pred) {for (BOOST_AUTO(iter, __can.begin()); iter != __can.end(); ++iter) __pred(*iter);}

template\
size_t get_size_in_byte(const _Can& __can)
{
size_t size_in_byte = 0;
do_something_to_all(__can, size_in_byte += boost::lambda::bind(&_Can::value_type::size, boost::lambda::_1));
return size_in_byte;
}

std::list\ can;
can.emplace_back("123");
can.emplace_back("456");
printf("%zu\n", get_size_in_byte(can));

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

まず、issue にある C++17/GCC reproducer をコンパイルし、完全な診断結果を記録します。payload ではリポジトリのファイルもテストも指定されていません。失敗している Boost.Lambda 式を追跡し、その後、影響を受ける標準の下で例が正常にコンパイルおよび実行されることを確認します。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
cpp
領域
compilers
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。