0
[固定] - コメント 内部コンパイルエラーのC++のCilkプラス
に与えられた説明は、GCC/5.4.0を使用してコンパイルするとき、私はコンパイルエラーを取得しています[エラーのスクリーンショットを更新しました]。次のものが報告されたエラーである:以下の
internal compiler error: in lower_stmt, at gimple-low.c:397 cilk_spawn m_sparsify_graph_helper__(mdl, n_pa, n_ch, score2beat);
は、エラーの原因となるコードスニペットです:私はそれがコンパイルエラーだと仮定し
void m_sparsify_graph_helper__(MDL mdl, set_type pa, set_type ch, std::vector<double> score2beat) {
//cilk::reducer<cilk::op_list_append<RNode_>> rlist;
//"rlist" - defined in the class as a private variable
if (ch == 0) { return; }
set_type n_ch = ch;
// Some more code -- which I am very sure is not causing error
int lsb = n_ - 1;
for (; lsb >= 0; --lsb) { if (in_set(pa, lsb)) { break; } }
if (lsb == n_ - 1) { return; }
set_type n_pa = set_add(pa, lsb + 1);
int n_pa_sz = set_size(n_pa);
if (n_pa_sz >= n_) { return; }
BitCombination comb(n_pa, n_pa_sz, n_);
for (;;) {
n_pa = comb.data();
// If cilk_spawn keyword removed it compiles fine.
cilk_spawn m_sparsify_graph_helper__(mdl, n_pa, n_ch, score2beat);
if (!comb.next() || in_set(n_pa, n_ - 1)) { break; }
}
}// m_sparsify_graph_helper__
が、私はこのエラーを回避する方法が何であるかを知っていただきたいと思いますし、コードに警告とエラーが発生しないようにしてください。
ICEは、ソースコードが有効であるかどうかに関係なく、常にコンパイルエラーです。それを報告する。 –
それは内部的なエラーについて言いましたか? –
@TrevorHickey完全なエラースクリーンショットを追加しました。 – letsBeePolite