Cherche option obscure de g++ - C++ - Programmation
Marsh Posté le 02-10-2003 à 21:34:17
ben du style templates instanciés :
Code original
Code :
|
Moi je veux :
Code :
|
evidemmment la le template est bidon, moi j'ai enormement de template imbriqués etc ...
EDIT : correction sur test()
Marsh Posté le 02-10-2003 à 21:37:54
je pense que tout ça est impossible, les templates, c'est pas du simple préprocesseur, je pense que tout ça se passe dans la machinerie interne de gcc au niveau du code intermédaire.
l'assembleur ça te suffit pas ? sinon y a une option pour avoir la liste des templates instanciés il me semble (avec -frepo, etc)
Marsh Posté le 02-10-2003 à 21:39:08
-frepo ca m'aide pas ...
l'assembleur, bah c un peu obscur pour ce que je veux faire...
et j'ai besoin d'une trace qqconque pour lui prouver que les templates se deroulent proprement.
Mais je pense aussi que c DMC :-/
Marsh Posté le 02-10-2003 à 21:41:14
en tout cas ça m'intéresse une technique pour le déroulage des templates. peut etre en émettant un message d'erreur si c'est possible
Marsh Posté le 02-10-2003 à 21:49:17
normal, ça se passe avec le prépo. le tout serait peut etre d'utiliser un static_warning (peut etre ce de boost) dans certains bou de code.
frepo ça te suffit pas ? tu connais un demangler d'ailleurs ? ou faut en écrire un? g++ respect le name-mangling ISO ?
Marsh Posté le 02-10-2003 à 21:51:19
Taz a écrit : normal, ça se passe avec le prépo. le tout serait peut etre d'utiliser un static_warning (peut etre ce de boost) dans certains bou de code. |
Je vais tenté d'utiliser un Compile Time assert.
Taz a écrit : |
je sais pas.
je sais pas.
je sais pas.
Marsh Posté le 02-10-2003 à 21:53:35
si ça marche, colle un bout de code pour l'exemple bidon, je mate Sphère, que j'ai pas à m'embêter pour essayer.
pour le reste, faudrait chercher quand même
Marsh Posté le 02-10-2003 à 22:08:29
bizarre
Code :
|
sans inline
[benoit@athlon tmp]$ g++ -frepo -O0 -Winline -c test.cpp
[benoit@athlon tmp]$ c++filt < test.rpo | grep test
M test.cpp
O void test<9>()
O void test<10>()
avec inline
[benoit@athlon tmp]$ g++ -frepo -O0 -Winline -c test.cpp
[benoit@athlon tmp]$ c++filt < test.rpo | grep test
M test.cpp
O void test<1>()
O void test<2>()
O void test<3>()
O void test<4>()
O void test<5>()
O void test<6>()
O void test<7>()
O void test<8>()
O void test<9>()
O void test<10>()
Marsh Posté le 02-10-2003 à 22:08:35
Bingo !
merci boost :
Code :
|
en sortie :
Code :
|
Marsh Posté le 02-10-2003 à 22:09:44
Taz a écrit : bizarre |
-ftemplate-deph-32 ??
Marsh Posté le 02-10-2003 à 22:13:59
ne change rien.
remets ta signature, je t'ai encore sauvé la vie
Marsh Posté le 02-10-2003 à 22:20:48
tu as quoi comme version de g++, de boost ? moi j'ai le message, mais pas sa provenance
Marsh Posté le 02-10-2003 à 22:25:27
Dev C++ version 4.9.8.0
Boost 1.3.0
regarde dans l'onglet "Compiler Log"
Marsh Posté le 02-10-2003 à 22:27:47
Joel F a écrit : Dev C++ version 4.9.8.0 |
toi un windozien, quel gachis, t'es pas un vrai
Marsh Posté le 02-10-2003 à 22:28:10
???
et tu sais quoi, j'ai meme desinstallé vc6 pour remettre emacs, gcc, les gnu tools.
j'utilise wget et meme gnuplot sur mon win2k
Marsh Posté le 02-10-2003 à 22:29:42
Joel F a écrit : ??? |
à quoi bon utiliser du tainted gnu ?
Marsh Posté le 02-10-2003 à 22:34:25
et oui, ca me fait chier c tout, moi c Mac Os X ou W2k ou rien na !
Marsh Posté le 02-10-2003 à 22:36:16
Linux est le plus rapide des Unix pour Macintosh. Même remarque pour Windows ... ça doit pas être la fête tous les jours. tu baisses dans mon estime.
Marsh Posté le 02-10-2003 à 22:40:05
Taz a écrit : Linux est le plus rapide des Unix pour Macintosh. Même remarque pour Windows ... ça doit pas être la fête tous les jours. tu baisses dans mon estime. |
ben ecoute j'ai eu enormement d eprobleme avec pas mald e distrib ...
si tu veux tu me donne une bonne distrib et on en parle plus, je partitionne mon dur et je tente l'expereince
Marsh Posté le 02-10-2003 à 22:41:56
bah Debian, à moins que tu n'es pas le niveau. les dernières RH et Mdk sont très fonctionnelles
Marsh Posté le 02-10-2003 à 22:43:44
Taz a écrit : bah Debian, à moins que tu n'es pas le niveau. |
c'est à dire "le niveau" ... ?
RH ...
Mandrake merci bien ...
Marsh Posté le 02-10-2003 à 22:53:51
Red Hat je l'ai eu au boulot, ct merdique ... lent au possible.
Mandrake ben tt le monde m'en dit du mal.
Marsh Posté le 02-10-2003 à 22:55:12
lent ?
ben essaye Debian. Mdk et RH sont bien quoi qu'on en dise...
Marsh Posté le 02-10-2003 à 22:57:35
OK, je tente debian sur le 2e PC on verra bien
de tt maniere g qd mem besin de win2k donc bon
Marsh Posté le 02-10-2003 à 22:59:16
on doit pas avoir la même définition de ce qui est bon. t'en es réduit à devoir installer gcc sous Windows pour devoir travailler, moi j'aurais pas réfléchi longtemps
Marsh Posté le 02-10-2003 à 23:03:11
ecoute, je doit aussi develloper des DLL win32 et plus souvent que de faire des test ss gcc.
J'utilise principalement gcc au boulot sur le Mac donc bon ...
Marsh Posté le 02-10-2003 à 23:05:37
oauis mais sur tes ordos persos c'est quand même la honte
Marsh Posté le 02-10-2003 à 23:06:38
excuse moi mais non ....
je vois pas ce qui a de honteux d'utiliser windows 2000 avec des outils gnu ou gcc ou tt ce que je veux.
Franchement, c'est vous qui me decevez ... extremistes nerdz
Marsh Posté le 02-10-2003 à 21:26:54
Voila j'ai besoin de visualiser un bout de code utilisant des templates APRES leur instanciations. Y a t il une option de gcc pour farie ca ??
Message édité par Joel F le 02-10-2003 à 21:27:11