[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: gcc et amd64



Alexandre Pineau <alexandre.pineau@free.fr> wrote:

Salut,

> Je maintiens le paquet "ire" et celui-ci ne se compile pas correctement sur amd64 avec gcc 4.
> J'ai appliqué le patch qui m'a été transmis, mais j'aimerai etre sur de mon coup avant de
> demander un upoad à mon sponsor.
> Il y a t'il un moyen de compiler pour une archi x86-64 en utilisant une archi x86 classique? 
> J'ai essayé d'imposer l'archi avec -march=k8, mais sans résultat. En cas, pourriez vous 
> essayer de compiler ire 0.92 (unstable) sur une archi amd64 pour moi?
> Le fichier dif ire_0.92-2.diff.gz est dispo sur http://alexandre.pineau.free.fr/fichiers/ire_0.92/

Ca compile sans problème, par contre ça vautre immédiatement.

===== 8< snip 8< =====
--- ire-0.92.orig/src/ithelib/debug.c
+++ ire-0.92/src/ithelib/debug.c
@@ -98,6 +98,7 @@
 {
 FILE *blt;
 va_list ap;
+va_list ap2;
 
 if(ilog_logoff)
     return;
@@ -106,16 +107,18 @@
     ithe_panic("ilog_text() - Missing call to ilog_start",NULL);
 
 va_start(ap, msg);
+va_copy(ap2, ap);
 
 vprintf(msg,ap);
 
 blt=fopen(bootlog,"a");
 if(!blt)
     ithe_panic("Could not append to log file",bootlog);
-vfprintf(blt,msg,ap);
+vfprintf(blt,msg,ap2);
 fclose(blt);
 
 va_end(ap);
+va_end(ap2);
 }
 
 /*
===== 8< snip 8< =====


Ne JAMAIS utiliser une va_list 2 fois de suite. Ca ne marche pas. Sauf
sur cette archi pourrie qu'est i386. Partout ailleurs, c'est garanti
de ne pas marcher. (pour les détails, man va_list)

Il y a sûrement d'autres endroits où ce problème existe, je n'ai pas
tout vérifié.

JB.

-- 
 Julien BLACHE - Debian & GNU/Linux Developer - <jblache@debian.org> 
 
 Public key available on <http://www.jblache.org> - KeyID: F5D6 5169 
 GPG Fingerprint : 935A 79F1 C8B3 3521 FD62 7CC7 CD61 4FD7 F5D6 5169 



Reply to: