error: jump to label ‘XXXX’ [-fpermissive]


下面的類似的源碼在MSVC上能正確編譯通過。但是gcc/g++上就會錯:


1. if(expr)
2. goto error;


3. size_t var = 0;

4.error:
5 error_handle();

 

 

4:1: error: jump to label ‘error’ [-fpermissive]
2:35: error: from here [-fpermissive]

3:9: error: crosses initialization of ‘size_t var’

 

解決以上問題就是要么所有變量初始化都放在函數開頭,要么所有變量就不讓它初始化,寫成這樣:

size_t var;

var = 0;

這樣錯誤就解決了。

 

reference:

http://tieba.baidu.com/p/3319980115?pid=58076852390&cid=#58076852390


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM