J'ai une masse de code que j'essaie de convertir de la version 4.2.2 de g++ à la version 4.7.2. Dans les versions 4.2.2 et antérieures, il semble que uint
a été défini comme suit unsigned int
. Je sais que ce n'est pas un standard c++ et que les vrais hommes écrivent le standard ISO C++, mais je me demandais s'il y avait un drapeau ou une sorte de moyen pour que g++ accepte uint
sans modifier tous les fichiers sources. Puis-je modifier CPPFLAGS
ou ajouter un interrupteur à la ligne d'exécution de g++ ? Mes recherches sur Google n'ont rien donné. J'ai des fichiers sources provenant d'un autre groupe au travail et j'aimerais accepter leurs noms. uint
transgressions.
par exemple
#include <iostream>
#include <fstream>
#include <assert.h>
using namespace std;
int main(void) {
uint foo = 0xdeadbeef;
cout<<hex<<foo<<endl;
}
rendements :
/tmp/rbroger1/gcc_update rbroger1 @ plxc25804
% /usr/intel/pkgs/gcc/4.2.2/bin/g++ ~/tmp.cc && ./a.out
deadbeef
/tmp/rbroger1/gcc_update rbroger1 @ plxc25804
% /usr/intel/pkgs/gcc/4.7.2/bin/g++ ~/tmp.cc && ./a.out
/nfs/pdx/home/rbroger1/tmp.cc: In function 'int main()':
/nfs/pdx/home/rbroger1/tmp.cc:8:5: error: 'uint' was not declared in this scope
/nfs/pdx/home/rbroger1/tmp.cc:8:10: error: expected ';' before 'foo'
/nfs/pdx/home/rbroger1/tmp.cc:9:16: error: 'foo' was not declared in this scope