2015-08-13 13 views
5

Genellikle kodumu ifort ile çalıştırıyorum, ancak uygulama sırasında, ben onun intel karşılığı çok daha sıkı olduğunu bulmak gibi, gfortran ile derleme ve test kullanmayı tercih ediyorum. Uyarı: "Uygun olmayan sekme karakter" in gfortran

, böyle -Wall olarak seçenekleri derleme açarken alıyorum aşağıdaki uyarı:

Warning: Nonconforming tab character at (1)

aynı derleme seçeneklerini kullanırken bu belirli bir uyarıyı susturmak için bir yolu var mı? Not Not NOT, boşluk karakterli sekmeleri değiştirmek istiyorum. Bu sorunu çözmenin bir yolu yoksa, "hayır mümkün değil" cevabı yeterli olacaktır.

+0

'| grep -v "Uygun olmayan sekme karakteri" ' – agentp

cevap

7

Uyarı: Başlangıçta yazdı aşağıda cevap sadece 4.x gfortran için geçerlidir Davranış, sürüm 5.x'te tersine çevrilmiştir, bkz. the answer by user3024046.


Şimdiye kadar neler denediniz? -Wtabs yardım eder mi? man gfortran Gönderen: Varsayılan olarak

-Wtabs

, sekmeler boşluk olarak kabul edilir, ancak sekmeler Fortran Karakter Kümesi üyesi değillerdir. Devam çizgileri için, 1 ile 9 arasındaki bir rakamın ardından bir sekme desteklenir. - Bir sekme ile karşılaşıldığında, numaralı tırnaklar bir uyarı verilmesine neden olur. Not - -Yağlı sekmeler -pedantic, -std = f95, -std = f2003, -std = f2008 ve -Wall için aktiftir.

Ve -Wall setleri -Wno-tabs.

Yardım bulamazsa, bu seçenek -Wall'un üzerine yazılabilir. Sonra el sekmeleri kısmı olmadan -Wall ayarı deneyebilirsiniz:

-Wall

biz kaçınarak tavsiye kullanımına ilişkin yaygın olarak kullanılan uyarı seçeneklerini etkinleştirir ve biz inanıyoruz önlemek için kolay olduğunu. Bu şu anda -Waliasing, -Wampersand, -Wconversion, -Wsurprising, -Wc-binding-type, -Wintrinsics-std, -Wno-sekmeler, -Wintrinsic-shadow, -Wline-kesilme, -Wtarget-yaşam boyu, -Wreal içerir -q-sabit ve -Wunused.

+0

Ben -Wo-tabs' denedim ama' -Wtabs' hile yaptı. Teşekkürler! – solalito

+0

Cevabınıza biraz eklediğinizde, '-Wall'' -Wtabs' seçeneklerinin üzerine yazmaz, '-pedantic' yapar. – solalito

+0

Geri bildiriminiz için teşekkürler :) Bu aslında 'pedantic'ten beklediğim şey: standart davranışı zorlamak için kullanıyorsunuz, bu yüzden sekmelere izin vermemelidir. –

3

GÜNCELLEME: GCC ile/gfortran 5xx (I 5.3.0 ile fark), -Wtabs kullanım olmuştur "ters" olup, dedikleri gibi, "daha mantıklı yapımı".

-Wno-sekme uyarı (önceki kullanım yani ters) olarak kapanır ise, uygun olmayan bir uyarı vermek Mİ burada (https://gcc.gnu.org/gcc-5/changes.html)

Şimdi -Wtabs bakınız.

+0

Vay, olayların ilginç dönüşü :) Kuduz bulmak için cevabımı sadece 4.x'e kadar çalıştığını ve 5.x'in cevabınız tarafından karşılandığını not ettim. Bir dahaki sefere kısmen yanlış cevap hakkında yorum yapmaktan çekinmeyin, her bir cevabın sınırlamalarını bilmek önemlidir. –

0

Gfortran sürüm 4.x'teki uyarıdan kurtulmanın en kolay yolu, -Wall bayrağının ayarladığı -Wno-sekmeleri bayrağının üzerine yazılmasıdır.İlk önce -Wall ve sonra -Wtabs

-Wall -Wtabs 
İlgili konular