Güncel Derleyicide Volatile Warning Çözümü

melihalbayrak

Yasaklanmış Üye
Cezalı
Geliştirici
Yardımsever Üye
Mesaj
1.317
Çözümler
84
Beğeni
791
Puan
1.475
Ticaret Puanı
0
Derleyici güncelledikten sonra oluşan warning çözümü. std 17 ve sonrasında volatile kullanımı olmadığından dolayı bu warning veriyor. Çözümü çok basit.

Main.cpp içerisinde aratıyoruz;
C++:
Genişlet Daralt Kopyala
volatile int num_events_called = 0;

Bu şekilde değiştiriyoruz;
C++:
Genişlet Daralt Kopyala
int num_events_called = 0;

Warningi gizlemek isteyenler için bunu yapabilirler;

Makefile dosyanızda CFLAGS kısmına bunu eklemeniz yeterli;

Kod:
Genişlet Daralt Kopyala
-Wno-volatile
 
3 yıl sonra güncelleme; Uyarı eğer libthecore içindeki main dosyasında veriyor ise düzeltme şu şekilde olacak.

Libthecore/main.o (cpp farketmez bazı bazı fileslarda değişiklik olabiliyor.)

Ara:
Genişlet Daralt Kopyala
void thecore_tick(void)

Değiştir:
Genişlet Daralt Kopyala
void thecore_tick(void)
{
    tics = tics + 1;
}

Fakat tam hatırlayamamakla birlikte bu uyarı game içindeki main.cpp de uyarı veriyor olabilir hatırlamıyorum 3 yıl geçtiği için. Neyse sonuç olarak volatile ile libthecore warning verirse çözüm bu şekilde.
 
Geri
Üst