2017-01-12 6 views
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__ 

나는 그것이 컴파일러 오류입니다 생각하지만 난이 오류를 우회 할 수있는 방법을 알고 싶습니다 코드가 경고와 오류없이 실행되도록하십시오.

오류 스크린 샷 : Error scrrenshot

+0

ICE는 소스 코드가 유효한지 여부에 관계없이 항상 컴파일러 오류입니다. 그것을보고하십시오. –

+0

그것이 내부 오류에 관한 모든 것입니까? –

+0

@TrevorHickey 완전한 오류 스크린 샷을 추가했습니다. – letsBeePolite

답변

0

이보고 된 오류가 GCC 6.X 릴리스에서 다림질 한 것 같다.

참고로 비슷한 문제가 발생하는 경우 GCC의 최신 릴리스에서 오류를 재현 해보고 이전에보고되고 수정되었는지 여부를 확인하십시오.