OVH Cloud OVH Cloud

Bug GCC 3.3 ?

62 réponses
Avatar
Marc Boyer
Bonjour,

j'ai du mal avec un code C++, et je soupsonne un bug de GCC 3.3.x.
Je n'arrive néanmoins pas à le trouver dans la base de donnée
des bugs (mais j'utilise peut-être pas les bons mots clef).

Voilà, est-ce que le nombre de caractères significatifs pour
une classe pourrait-être tout petit en GCC 3.3 ?

J'ai deux classes template: StateSpace et StateSpaceNode,
et je me demande s'il ne les confond pas parfois.

Si vous en avez connaissance, merci de me le dire avant que je
tente le passage à GCC 3.4 (je suis pas partant, ma tentative
de passage 3.2 à 3.3 a conduit à une réinstallation complète
de la machine: oui, je suis nul en administration Linux).

Merci d'avance,
Marc Boyer
--
Je ne respecte plus le code de la route à vélo depuis une double fracture
due au fait que j'étais le seul à le respecter.

10 réponses

1 2 3 4 5
Avatar
Fabien LE LEZ
On 15 Nov 2004 13:51:02 GMT, Marc Boyer
:

J'ai deux classes template: StateSpace et StateSpaceNode,
et je me demande s'il ne les confond pas parfois.


Sur des noms si courts, si le bug avait été présent, je pense que pas
mal de gens auraient hurlé ici même. A priori, ton problème est
ailleurs.
Par contre, pense à passer un coup de préprocesseur, histoire de voir
s'il n'y a pas un #define parasite quelque part.


--
;-)

Avatar
Marc Boyer
In article , Fabien LE LEZ wrote:
On 15 Nov 2004 13:51:02 GMT, Marc Boyer
:

J'ai deux classes template: StateSpace et StateSpaceNode,
et je me demande s'il ne les confond pas parfois.


Sur des noms si courts, si le bug avait été présent, je pense que pas
mal de gens auraient hurlé ici même.


Ca me paraissait énorme en effet, mais je déclare
une variable
StateSpaceNode<int, int>
et il m'affiche des messages d'erreurs qui font apparaître
les noms de paramêtres par défaut de StateSpace.
Bien sur, aucune référence à StateSpace dans StateSpaceNode
(mais beaucoup dans l'autre sens).

A priori, ton problème est ailleurs.


J'en ai peur... Mais ça vallait le coup de demander.

Par contre, pense à passer un coup de préprocesseur, histoire de voir
s'il n'y a pas un #define parasite quelque part.


Oui, merci, je vais voir ça.

Marc Boyer
--
Je ne respecte plus le code de la route à vélo depuis une double fracture
due au fait que j'étais le seul à le respecter.


Avatar
Fabien LE LEZ
On 15 Nov 2004 14:11:28 GMT, Marc Boyer
:

et il m'affiche des messages d'erreurs qui font apparaître
les noms de paramêtres par défaut de StateSpace.


Comme d'hab', il te reste à isoler le code qui pose problème, et à le
poster ici...


--
;-)

Avatar
Marc Boyer
In article , Fabien LE LEZ wrote:
On 15 Nov 2004 14:11:28 GMT, Marc Boyer
:

et il m'affiche des messages d'erreurs qui font apparaître
les noms de paramêtres par défaut de StateSpace.


Comme d'hab', il te reste à isoler le code qui pose problème, et à le
poster ici...


Ca non :-(
Comment dire, je reprends 20.000 lignes de code avec
plein de templates dans tous les sens, plein de dépendances,
et j'essaye de faire un petit dépoussiérage pour comprendre
comment ça tourne.
Mais ta suggestion de #define mal positionné me semble
la plus probable. J'essaye de tester ça ce soir. Même que
ça a à voir avec mon autre message. Je dois être le seul
à pas avoir fait le lien... Quand on a le nez dedans :-(

Marc Boyer
--
Je ne respecte plus le code de la route à vélo depuis une double fracture
due au fait que j'étais le seul à le respecter.


Avatar
drkm
Marc Boyer writes:

StateSpaceNode<int, int>
et il m'affiche des messages d'erreurs qui font apparaître
les noms de paramêtres par défaut de StateSpace.
Bien sur, aucune référence à StateSpace dans StateSpaceNode
(mais beaucoup dans l'autre sens).


Peut-être l'erreur n'est-elle générée qu'au point d'instanciation,
qui pourrait apparemment se trouver dans « StateSpace ». Quels sont
exactement les messages d'erreur ?

--drkm

Avatar
kanze
Marc Boyer wrote in message
news:<cnac86$6ra$...

j'ai du mal avec un code C++, et je soupsonne un bug de GCC 3.3.x. Je
n'arrive néanmoins pas à le trouver dans la base de donnée des bugs
(mais j'utilise peut-être pas les bons mots clef).

Voilà, est-ce que le nombre de caractères significatifs pour une
classe pourrait-être tout petit en GCC 3.3 ?

J'ai deux classes template: StateSpace et StateSpaceNode, et je me
demande s'il ne les confond pas parfois.


Ça m'étonnerait. J'utilise assez regulièrement des noms bien plus longs,
sans le moindre problème.

Si vous en avez connaissance, merci de me le dire avant que je tente
le passage à GCC 3.4 (je suis pas partant, ma tentative de passage 3.2
à 3.3 a conduit à une réinstallation complète de la machine: oui, je
suis nul en administration Linux).


Cependant...

Dans de tels cas, j'installe localement chez moi, sans toucher à la
configuration « officielle » de ma machine. Ce que je conseille,
d'ailleurs, c'est d'installer dans un repertoire propre à la version, du
genre ~/gcc-3.4.3, puis d'utiliser un lien symbolique pour choisir la
version avec laquelle tu veux travailler.

--
James Kanze GABI Software http://www.gabi-soft.fr
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Avatar
Marc Boyer
In article , drkm wrote:
Marc Boyer writes:

StateSpaceNode<int, int>
et il m'affiche des messages d'erreurs qui font apparaître
les noms de paramêtres par défaut de StateSpace.
Bien sur, aucune référence à StateSpace dans StateSpaceNode
(mais beaucoup dans l'autre sens).


Peut-être l'erreur n'est-elle générée qu'au point d'instanciation,
qui pourrait apparemment se trouver dans « StateSpace ». Quels sont
exactement les messages d'erreur ?


En fait, comme l'avait deviné Fabien, j'avais une macro StateSpaceNode
qui trainait.
Honte à moi.

Désolé d'avoir fait perdre du temps.

Marc Boyer
--
Je ne respecte plus le code de la route à vélo depuis une double fracture
due au fait que j'étais le seul à le respecter.


Avatar
Marc Boyer
wrote:
Marc Boyer wrote in message
news:<cnac86$6ra$...

j'ai du mal avec un code C++, et je soupsonne un bug de GCC 3.3.x. Je
n'arrive néanmoins pas à le trouver dans la base de donnée des bugs
(mais j'utilise peut-être pas les bons mots clef).

Voilà, est-ce que le nombre de caractères significatifs pour une
classe pourrait-être tout petit en GCC 3.3 ?

J'ai deux classes template: StateSpace et StateSpaceNode, et je me
demande s'il ne les confond pas parfois.


Ça m'étonnerait. J'utilise assez regulièrement des noms bien plus longs,
sans le moindre problème.


Il me semblait bien.

Si vous en avez connaissance, merci de me le dire avant que je tente
le passage à GCC 3.4 (je suis pas partant, ma tentative de passage 3.2
à 3.3 a conduit à une réinstallation complète de la machine: oui, je
suis nul en administration Linux).


Cependant...

Dans de tels cas, j'installe localement chez moi, sans toucher à la
configuration « officielle » de ma machine. Ce que je conseille,
d'ailleurs, c'est d'installer dans un repertoire propre à la version, du
genre ~/gcc-3.4.3, puis d'utiliser un lien symbolique pour choisir la
version avec laquelle tu veux travailler.


Je ferais ça la prochaine fois. Là, j'ai été trop optimiste.

Sinon, en ce qui concerne le problème lui même, comme Fabien
l'avait deviné, c'étais une macro qui trainait.
Honte à moi.
Et désolé d'avoir fait perdre du temps.

Merci,
Marc Boyer
--
Je ne respecte plus le code de la route à vélo depuis une double fracture
due au fait que j'étais le seul à le respecter.


Avatar
Gabriel Dos Reis
Marc Boyer writes:

| Voilà, est-ce que le nombre de caractères significatifs pour
| une classe pourrait-être tout petit en GCC 3.3 ?

?

| J'ai deux classes template: StateSpace et StateSpaceNode,
| et je me demande s'il ne les confond pas parfois.

Je ne crois pas.


-- Gaby
Avatar
Gabriel Dos Reis
Marc Boyer writes:

| In article , Fabien LE LEZ wrote:
| > On 15 Nov 2004 13:51:02 GMT, Marc Boyer
| >:
| >
| >>J'ai deux classes template: StateSpace et StateSpaceNode,
| >>et je me demande s'il ne les confond pas parfois.
| >
| > Sur des noms si courts, si le bug avait été présent, je pense que pas
| > mal de gens auraient hurlé ici même.
|
| Ca me paraissait énorme en effet, mais je déclare
| une variable
| StateSpaceNode<int, int>
| et il m'affiche des messages d'erreurs qui font apparaître
| les noms de paramêtres par défaut de StateSpace.
| Bien sur, aucune référence à StateSpace dans StateSpaceNode
| (mais beaucoup dans l'autre sens).

Hein ?

Peux-tu poster un code minimal ?

-- Gaby
1 2 3 4 5