> pourquoi ca veut pas compiler? > > #define F835 mov eax,7 > mov edx,17 > mul edx
Et pourquoi ça ne veut pas compiler ?
-- The C programming language is best described as a hardware-independent assembler language. --Joël Spolsky
tester le avec _asm { F835 }
Manuel Leclerc
dark poulpo a écrit :
Manuel Leclerc a écrit :
> dark poulpo a écrit : > > > pourquoi ca veut pas compiler? > > > > #define F835 mov eax,7 > > mov edx,17 > > mul edx > > Et pourquoi ça ne veut pas compiler ?
tester le avec _asm { F835 }
Tu aurais quand même pu fournir l'extrait de source complet et les messages d'erreurs du compilateur dans ta première question question. C'est pour ça que j'avais répondu par une autre question.
Bon, j'ai fait l'essai. Manifestement, VC++ se mélange joyeusement les pinceaux entre le moment où le pré-processeur traite la macro et le moment où je ne sais quoi traite le mot clé _asm.
-- Software engineering cost is what matters to me ( I turned 40, so I think different now....;-) ) --Hans Reiser
dark poulpo a écrit :
Manuel Leclerc a écrit :
> dark poulpo a écrit :
>
> > pourquoi ca veut pas compiler?
> >
> > #define F835 mov eax,7
> > mov edx,17
> > mul edx
>
> Et pourquoi ça ne veut pas compiler ?
tester le avec
_asm {
F835
}
Tu aurais quand même pu fournir l'extrait de source complet
et les messages d'erreurs du compilateur dans ta première question
question. C'est pour ça que j'avais répondu par une autre question.
Bon, j'ai fait l'essai. Manifestement, VC++ se mélange
joyeusement les pinceaux entre le moment où le pré-processeur
traite la macro et le moment où je ne sais quoi traite le
mot clé _asm.
> dark poulpo a écrit : > > > pourquoi ca veut pas compiler? > > > > #define F835 mov eax,7 > > mov edx,17 > > mul edx > > Et pourquoi ça ne veut pas compiler ?
tester le avec _asm { F835 }
Tu aurais quand même pu fournir l'extrait de source complet et les messages d'erreurs du compilateur dans ta première question question. C'est pour ça que j'avais répondu par une autre question.
Bon, j'ai fait l'essai. Manifestement, VC++ se mélange joyeusement les pinceaux entre le moment où le pré-processeur traite la macro et le moment où je ne sais quoi traite le mot clé _asm.
-- Software engineering cost is what matters to me ( I turned 40, so I think different now....;-) ) --Hans Reiser
dark poulpo
"Manuel Leclerc" a écrit dans le message news: 412f431b$
dark poulpo a écrit :
> Manuel Leclerc a écrit : > > > dark poulpo a écrit : > > > > > pourquoi ca veut pas compiler? > > > > > > #define F835 mov eax,7 > > > mov edx,17 > > > mul edx > > > > Et pourquoi ça ne veut pas compiler ? > > tester le avec > _asm { > F835 > }
Tu aurais quand même pu fournir l'extrait de source complet et les messages d'erreurs du compilateur dans ta première question question. C'est pour ça que j'avais répondu par une autre question.
Bon, j'ai fait l'essai. Manifestement, VC++ se mélange joyeusement les pinceaux entre le moment où le pré-processeur traite la macro et le moment où je ne sais quoi traite le mot clé _asm.
-- Software engineering cost is what matters to me ( I turned 40, so I think different now....;-) ) --Hans Reiser
bein il me semblait evient que fallait le tester avec _asm{}, brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word error C2400: inline assembler syntax error in 'second operand'; found 'register' warning C4405: 'mul' : identifier is reserved word
"Manuel Leclerc" <manuel.leclerc@alussinan.org> a écrit dans le message
news: 412f431b$1@neottia.net...
dark poulpo a écrit :
> Manuel Leclerc a écrit :
>
> > dark poulpo a écrit :
> >
> > > pourquoi ca veut pas compiler?
> > >
> > > #define F835 mov eax,7
> > > mov edx,17
> > > mul edx
> >
> > Et pourquoi ça ne veut pas compiler ?
>
> tester le avec
> _asm {
> F835
> }
Tu aurais quand même pu fournir l'extrait de source complet
et les messages d'erreurs du compilateur dans ta première question
question. C'est pour ça que j'avais répondu par une autre question.
Bon, j'ai fait l'essai. Manifestement, VC++ se mélange
joyeusement les pinceaux entre le moment où le pré-processeur
traite la macro et le moment où je ne sais quoi traite le
mot clé _asm.
--
Software engineering cost is what matters to me ( I turned 40, so I think
different now....;-) )
--Hans Reiser
bein il me semblait evient que fallait le tester avec _asm{}, brefle,
j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word
error C2400: inline assembler syntax error in 'second operand'; found
'register'
warning C4405: 'mul' : identifier is reserved word
"Manuel Leclerc" a écrit dans le message news: 412f431b$
dark poulpo a écrit :
> Manuel Leclerc a écrit : > > > dark poulpo a écrit : > > > > > pourquoi ca veut pas compiler? > > > > > > #define F835 mov eax,7 > > > mov edx,17 > > > mul edx > > > > Et pourquoi ça ne veut pas compiler ? > > tester le avec > _asm { > F835 > }
Tu aurais quand même pu fournir l'extrait de source complet et les messages d'erreurs du compilateur dans ta première question question. C'est pour ça que j'avais répondu par une autre question.
Bon, j'ai fait l'essai. Manifestement, VC++ se mélange joyeusement les pinceaux entre le moment où le pré-processeur traite la macro et le moment où je ne sais quoi traite le mot clé _asm.
-- Software engineering cost is what matters to me ( I turned 40, so I think different now....;-) ) --Hans Reiser
bein il me semblait evient que fallait le tester avec _asm{}, brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word error C2400: inline assembler syntax error in 'second operand'; found 'register' warning C4405: 'mul' : identifier is reserved word
dark poulpo
"dark poulpo" a écrit dans le message news: cgngsq$ltj$
"Manuel Leclerc" a écrit dans le message news: 412f431b$ > dark poulpo a écrit : > > > Manuel Leclerc a écrit : > > > > > dark poulpo a écrit : > > > > > > > pourquoi ca veut pas compiler? > > > > > > > > #define F835 mov eax,7 > > > > mov edx,17 > > > > mul edx > > > > > > Et pourquoi ça ne veut pas compiler ? > > > > tester le avec > > _asm { > > F835 > > } > > Tu aurais quand même pu fournir l'extrait de source complet > et les messages d'erreurs du compilateur dans ta première question > question. C'est pour ça que j'avais répondu par une autre question. > > Bon, j'ai fait l'essai. Manifestement, VC++ se mélange > joyeusement les pinceaux entre le moment où le pré-processeur > traite la macro et le moment où je ne sais quoi traite le > mot clé _asm. > > Contournement testé : > > #define F835 _asm { > mov eax,7 > mov edx,17 > mul edx > } > > -- > Software engineering cost is what matters to me ( I turned 40, so I
think
> different now....;-) ) > --Hans Reiser > bein il me semblait evient que fallait le tester avec _asm{}, brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word error C2400: inline assembler syntax error in 'second operand'; found 'register' warning C4405: 'mul' : identifier is reserved word
on m'a donner ca comme explication:
ça doit être à cause des retours à la ligne. Les séparateurs d'instructions de l'assembleur c'est les retours à la ligne non ? En fait avec ta macro c'est comme écrire :
_asm { mov eax,7 mov edx,17 mul edx }
comment corriger ca?
"dark poulpo" <syn-ack@wanadoo.fr> a écrit dans le message news:
cgngsq$ltj$1@news-reader1.wanadoo.fr...
"Manuel Leclerc" <manuel.leclerc@alussinan.org> a écrit dans le message
news: 412f431b$1@neottia.net...
> dark poulpo a écrit :
>
> > Manuel Leclerc a écrit :
> >
> > > dark poulpo a écrit :
> > >
> > > > pourquoi ca veut pas compiler?
> > > >
> > > > #define F835 mov eax,7
> > > > mov edx,17
> > > > mul edx
> > >
> > > Et pourquoi ça ne veut pas compiler ?
> >
> > tester le avec
> > _asm {
> > F835
> > }
>
> Tu aurais quand même pu fournir l'extrait de source complet
> et les messages d'erreurs du compilateur dans ta première question
> question. C'est pour ça que j'avais répondu par une autre question.
>
> Bon, j'ai fait l'essai. Manifestement, VC++ se mélange
> joyeusement les pinceaux entre le moment où le pré-processeur
> traite la macro et le moment où je ne sais quoi traite le
> mot clé _asm.
>
> Contournement testé :
>
> #define F835 _asm {
> mov eax,7
> mov edx,17
> mul edx
> }
>
> --
> Software engineering cost is what matters to me ( I turned 40, so I
think
> different now....;-) )
> --Hans Reiser
>
bein il me semblait evient que fallait le tester avec _asm{}, brefle,
j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word
error C2400: inline assembler syntax error in 'second operand'; found
'register'
warning C4405: 'mul' : identifier is reserved word
on m'a donner ca comme explication:
ça doit être à cause des retours à la ligne. Les séparateurs
d'instructions de l'assembleur c'est les retours à la ligne non ?
En fait avec ta macro c'est comme écrire :
"dark poulpo" a écrit dans le message news: cgngsq$ltj$
"Manuel Leclerc" a écrit dans le message news: 412f431b$ > dark poulpo a écrit : > > > Manuel Leclerc a écrit : > > > > > dark poulpo a écrit : > > > > > > > pourquoi ca veut pas compiler? > > > > > > > > #define F835 mov eax,7 > > > > mov edx,17 > > > > mul edx > > > > > > Et pourquoi ça ne veut pas compiler ? > > > > tester le avec > > _asm { > > F835 > > } > > Tu aurais quand même pu fournir l'extrait de source complet > et les messages d'erreurs du compilateur dans ta première question > question. C'est pour ça que j'avais répondu par une autre question. > > Bon, j'ai fait l'essai. Manifestement, VC++ se mélange > joyeusement les pinceaux entre le moment où le pré-processeur > traite la macro et le moment où je ne sais quoi traite le > mot clé _asm. > > Contournement testé : > > #define F835 _asm { > mov eax,7 > mov edx,17 > mul edx > } > > -- > Software engineering cost is what matters to me ( I turned 40, so I
think
> different now....;-) ) > --Hans Reiser > bein il me semblait evient que fallait le tester avec _asm{}, brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word error C2400: inline assembler syntax error in 'second operand'; found 'register' warning C4405: 'mul' : identifier is reserved word
on m'a donner ca comme explication:
ça doit être à cause des retours à la ligne. Les séparateurs d'instructions de l'assembleur c'est les retours à la ligne non ? En fait avec ta macro c'est comme écrire :
_asm { mov eax,7 mov edx,17 mul edx }
comment corriger ca?
dark poulpo
"dark poulpo" a écrit dans le message news: cgnh2v$m6q$
"dark poulpo" a écrit dans le message news: cgngsq$ltj$ > "Manuel Leclerc" a écrit dans le message > news: 412f431b$ > > dark poulpo a écrit : > > > > > Manuel Leclerc a écrit : > > > > > > > dark poulpo a écrit : > > > > > > > > > pourquoi ca veut pas compiler? > > > > > > > > > > #define F835 mov eax,7 > > > > > mov edx,17 > > > > > mul edx > > > > > > > > Et pourquoi ça ne veut pas compiler ? > > > > > > tester le avec > > > _asm { > > > F835 > > > } > > > > Tu aurais quand même pu fournir l'extrait de source complet > > et les messages d'erreurs du compilateur dans ta première question > > question. C'est pour ça que j'avais répondu par une autre question. > > > > Bon, j'ai fait l'essai. Manifestement, VC++ se mélange > > joyeusement les pinceaux entre le moment où le pré-processeur > > traite la macro et le moment où je ne sais quoi traite le > > mot clé _asm. > > > > Contournement testé : > > > > #define F835 _asm { > > mov eax,7 > > mov edx,17 > > mul edx > > } > > > > -- > > Software engineering cost is what matters to me ( I turned 40, so I think > > different now....;-) ) > > --Hans Reiser > > > bein il me semblait evient que fallait le tester avec _asm{}, brefle, > j'ai deja essayé ta macro dans le cpp, ca revient au meme > > warning C4405: 'mov' : identifier is reserved word > error C2400: inline assembler syntax error in 'second operand'; found > 'register' > warning C4405: 'mul' : identifier is reserved word >
on m'a donner ca comme explication:
ça doit être à cause des retours à la ligne. Les séparateurs d'instructions de l'assembleur c'est les retours à la ligne non ? En fait avec ta macro c'est comme écrire :
"dark poulpo" <syn-ack@wanadoo.fr> a écrit dans le message news:
cgnh2v$m6q$1@news-reader4.wanadoo.fr...
"dark poulpo" <syn-ack@wanadoo.fr> a écrit dans le message news:
cgngsq$ltj$1@news-reader1.wanadoo.fr...
> "Manuel Leclerc" <manuel.leclerc@alussinan.org> a écrit dans le message
> news: 412f431b$1@neottia.net...
> > dark poulpo a écrit :
> >
> > > Manuel Leclerc a écrit :
> > >
> > > > dark poulpo a écrit :
> > > >
> > > > > pourquoi ca veut pas compiler?
> > > > >
> > > > > #define F835 mov eax,7
> > > > > mov edx,17
> > > > > mul edx
> > > >
> > > > Et pourquoi ça ne veut pas compiler ?
> > >
> > > tester le avec
> > > _asm {
> > > F835
> > > }
> >
> > Tu aurais quand même pu fournir l'extrait de source complet
> > et les messages d'erreurs du compilateur dans ta première question
> > question. C'est pour ça que j'avais répondu par une autre question.
> >
> > Bon, j'ai fait l'essai. Manifestement, VC++ se mélange
> > joyeusement les pinceaux entre le moment où le pré-processeur
> > traite la macro et le moment où je ne sais quoi traite le
> > mot clé _asm.
> >
> > Contournement testé :
> >
> > #define F835 _asm {
> > mov eax,7
> > mov edx,17
> > mul edx
> > }
> >
> > --
> > Software engineering cost is what matters to me ( I turned 40, so I
think
> > different now....;-) )
> > --Hans Reiser
> >
> bein il me semblait evient que fallait le tester avec _asm{}, brefle,
> j'ai deja essayé ta macro dans le cpp, ca revient au meme
>
> warning C4405: 'mov' : identifier is reserved word
> error C2400: inline assembler syntax error in 'second operand'; found
> 'register'
> warning C4405: 'mul' : identifier is reserved word
>
on m'a donner ca comme explication:
ça doit être à cause des retours à la ligne. Les séparateurs
d'instructions de l'assembleur c'est les retours à la ligne non ?
En fait avec ta macro c'est comme écrire :
"dark poulpo" a écrit dans le message news: cgnh2v$m6q$
"dark poulpo" a écrit dans le message news: cgngsq$ltj$ > "Manuel Leclerc" a écrit dans le message > news: 412f431b$ > > dark poulpo a écrit : > > > > > Manuel Leclerc a écrit : > > > > > > > dark poulpo a écrit : > > > > > > > > > pourquoi ca veut pas compiler? > > > > > > > > > > #define F835 mov eax,7 > > > > > mov edx,17 > > > > > mul edx > > > > > > > > Et pourquoi ça ne veut pas compiler ? > > > > > > tester le avec > > > _asm { > > > F835 > > > } > > > > Tu aurais quand même pu fournir l'extrait de source complet > > et les messages d'erreurs du compilateur dans ta première question > > question. C'est pour ça que j'avais répondu par une autre question. > > > > Bon, j'ai fait l'essai. Manifestement, VC++ se mélange > > joyeusement les pinceaux entre le moment où le pré-processeur > > traite la macro et le moment où je ne sais quoi traite le > > mot clé _asm. > > > > Contournement testé : > > > > #define F835 _asm { > > mov eax,7 > > mov edx,17 > > mul edx > > } > > > > -- > > Software engineering cost is what matters to me ( I turned 40, so I think > > different now....;-) ) > > --Hans Reiser > > > bein il me semblait evient que fallait le tester avec _asm{}, brefle, > j'ai deja essayé ta macro dans le cpp, ca revient au meme > > warning C4405: 'mov' : identifier is reserved word > error C2400: inline assembler syntax error in 'second operand'; found > 'register' > warning C4405: 'mul' : identifier is reserved word >
on m'a donner ca comme explication:
ça doit être à cause des retours à la ligne. Les séparateurs d'instructions de l'assembleur c'est les retours à la ligne non ? En fait avec ta macro c'est comme écrire :
bein il me semblait evident que fallait le tester avec _asm{},
Tu as parfois plus de réponse quand ta question est rédigé avec le maximum de renseignement. Cela montre alors que tu as au moins fait cet effort là :-)
brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word error C2400: inline assembler syntax error in 'second operand'; found 'register' warning C4405: 'mul' : identifier is reserved word
Ba oui. J'ai codé ma macro puis j'ai compilé, j'ai vu 0 errors, 0 warnings mais je n'avais même pas cité ma macro dans le code ! Désolé.
Il y a bien une merde entre le préprocesseur et _asm {}
bein il me semblait evident que fallait le tester avec _asm{},
Tu as parfois plus de réponse quand ta question est rédigé
avec le maximum de renseignement. Cela montre alors que tu as
au moins fait cet effort là :-)
brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word
error C2400: inline assembler syntax error in 'second operand'; found
'register'
warning C4405: 'mul' : identifier is reserved word
Ba oui. J'ai codé ma macro puis j'ai compilé, j'ai vu
0 errors, 0 warnings mais je n'avais même pas cité ma
macro dans le code ! Désolé.
Il y a bien une merde entre le préprocesseur et _asm {}
bein il me semblait evident que fallait le tester avec _asm{},
Tu as parfois plus de réponse quand ta question est rédigé avec le maximum de renseignement. Cela montre alors que tu as au moins fait cet effort là :-)
brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
warning C4405: 'mov' : identifier is reserved word error C2400: inline assembler syntax error in 'second operand'; found 'register' warning C4405: 'mul' : identifier is reserved word
Ba oui. J'ai codé ma macro puis j'ai compilé, j'ai vu 0 errors, 0 warnings mais je n'avais même pas cité ma macro dans le code ! Désolé.
Il y a bien une merde entre le préprocesseur et _asm {}
"Manuel Leclerc" a écrit dans le message news: 412f4cc5$
Tu as parfois plus de réponse quand ta question est rédigé avec le maximum de renseignement. Cela montre alors que tu as au moins fait cet effort là :-)
> brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme > > warning C4405: 'mov' : identifier is reserved word > error C2400: inline assembler syntax error in 'second operand'; found > 'register' > warning C4405: 'mul' : identifier is reserved word
Ba oui. J'ai codé ma macro puis j'ai compilé, j'ai vu 0 errors, 0 warnings mais je n'avais même pas cité ma macro dans le code ! Désolé.
Il y a bien une merde entre le préprocesseur et _asm {}
lollll,, jai posté pareil 1mn avant toi,,,c moi le plus rapide!!!!!! :-pppp
"Manuel Leclerc" <manuel.leclerc@alussinan.org> a écrit dans le message
news: 412f4cc5$1@neottia.net...
Tu as parfois plus de réponse quand ta question est rédigé
avec le maximum de renseignement. Cela montre alors que tu as
au moins fait cet effort là :-)
> brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme
>
> warning C4405: 'mov' : identifier is reserved word
> error C2400: inline assembler syntax error in 'second operand'; found
> 'register'
> warning C4405: 'mul' : identifier is reserved word
Ba oui. J'ai codé ma macro puis j'ai compilé, j'ai vu
0 errors, 0 warnings mais je n'avais même pas cité ma
macro dans le code ! Désolé.
Il y a bien une merde entre le préprocesseur et _asm {}
"Manuel Leclerc" a écrit dans le message news: 412f4cc5$
Tu as parfois plus de réponse quand ta question est rédigé avec le maximum de renseignement. Cela montre alors que tu as au moins fait cet effort là :-)
> brefle, j'ai deja essayé ta macro dans le cpp, ca revient au meme > > warning C4405: 'mov' : identifier is reserved word > error C2400: inline assembler syntax error in 'second operand'; found > 'register' > warning C4405: 'mul' : identifier is reserved word
Ba oui. J'ai codé ma macro puis j'ai compilé, j'ai vu 0 errors, 0 warnings mais je n'avais même pas cité ma macro dans le code ! Désolé.
Il y a bien une merde entre le préprocesseur et _asm {}
lollll,, jai posté pareil 1mn avant toi,,,c moi le plus rapide!!!!!! :-pppp
Manuel Leclerc
dark poulpo a écrit :
lollll,, jai posté pareil 1mn avant toi,,, c moi le plus rapide!!!!!! :-pppp
Non je crois que tu as posté 1/4 heures avant moi. Il me semble que ta machine avance de 17 minutes, ou alors ton serveur de news retarde de 17 minutes.
<ton post>
Date: Fri, 27 Aug 2004 17:00:38 +0200 NNTP-Posting-Date: 27 Aug 2004 14:43:53 GMT
</ton post>
J'aurais du vérifier avant de poster
-- I have systematically eliminated all references to "software", because some people disagree about what it means. --Andrew Suffield
dark poulpo a écrit :
lollll,, jai posté pareil 1mn avant toi,,,
c moi le plus rapide!!!!!! :-pppp
Non je crois que tu as posté 1/4 heures avant moi.
Il me semble que ta machine avance de 17 minutes, ou
alors ton serveur de news retarde de 17 minutes.
<ton post>
Date: Fri, 27 Aug 2004 17:00:38 +0200
NNTP-Posting-Date: 27 Aug 2004 14:43:53 GMT
</ton post>
J'aurais du vérifier avant de poster
--
I have systematically eliminated all references to "software", because
some people disagree about what it means.
--Andrew Suffield
lollll,, jai posté pareil 1mn avant toi,,, c moi le plus rapide!!!!!! :-pppp
Non je crois que tu as posté 1/4 heures avant moi. Il me semble que ta machine avance de 17 minutes, ou alors ton serveur de news retarde de 17 minutes.
<ton post>
Date: Fri, 27 Aug 2004 17:00:38 +0200 NNTP-Posting-Date: 27 Aug 2004 14:43:53 GMT
</ton post>
J'aurais du vérifier avant de poster
-- I have systematically eliminated all references to "software", because some people disagree about what it means. --Andrew Suffield
Pierre Maurette
"dark poulpo" a écrit:
"Manuel Leclerc" a écrit dans le message news:
dark poulpo a écrit :
> pourquoi ca veut pas compiler? > > #define F835 mov eax,7 > mov edx,17 > mul edx
Et pourquoi ça ne veut pas compiler ?
Je vois plus loin que vous avez eu votre réponse. Néanmoins, deux suggestion, la première étant AMHA une règle: * Selon le compilo, le bloc asm (ou _asm ou __asm) peut très bien être envoyé "as is" à l'assembleur (gcc?). Il ne faut donc pas présupposer que le préprocesseur va bosser à l'intérieur du bloc. Rappelons que le mot clé _asm est hors langage. Il faut donc faire une macro de tout le bloc (et la nommer en fonction de ce qu'elle fait vu du C/C++). J'avais de plus remarqué (et même sur d'autres compilos) qu'effectivement il ne faut pas utiliser la possibilté de bloc _asm{instruction1, instruction2, ..., instructionN} mais bien une série d'instructions C (ou C++) "_asm une_instruction". La notion d'instruction C/C++ (même si Microsoft specific) est importante.
* Face à ce genre de truc, faire une sortie préprocesseur.
tester le avec _asm { F835 }
Je vous trouve un peu cavalier avec votre "tester le avec ...". C'est quand même vous qui posez la question, ça ne vous trourait pas le cul de copier/coller le code complet et le message d'erreur. De plus, vous pourriez ainsi avoir des réponses de ceux qui n'ont pas VC++ (quelle version ?) installé. Amicalement (à cause de l'_asm ;-)) -- Pierre
"dark poulpo" <syn-ack@wanadoo.fr> a écrit:
"Manuel Leclerc" <manuel.leclerc@alussinan.org> a écrit dans le message
news: 412f36ea@neottia.net...
dark poulpo a écrit :
> pourquoi ca veut pas compiler?
>
> #define F835 mov eax,7
> mov edx,17
> mul edx
Et pourquoi ça ne veut pas compiler ?
Je vois plus loin que vous avez eu votre réponse. Néanmoins, deux
suggestion, la première étant AMHA une règle:
* Selon le compilo, le bloc asm (ou _asm ou __asm) peut très bien être
envoyé "as is" à l'assembleur (gcc?). Il ne faut donc pas présupposer
que le préprocesseur va bosser à l'intérieur du bloc. Rappelons que le
mot clé _asm est hors langage. Il faut donc faire une macro de tout le
bloc (et la nommer en fonction de ce qu'elle fait vu du C/C++).
J'avais de plus remarqué (et même sur d'autres compilos)
qu'effectivement il ne faut pas utiliser la possibilté de bloc
_asm{instruction1, instruction2, ..., instructionN} mais bien une
série d'instructions C (ou C++) "_asm une_instruction". La notion
d'instruction C/C++ (même si Microsoft specific) est importante.
* Face à ce genre de truc, faire une sortie préprocesseur.
tester le avec
_asm {
F835
}
Je vous trouve un peu cavalier avec votre "tester le avec ...". C'est
quand même vous qui posez la question, ça ne vous trourait pas le cul
de copier/coller le code complet et le message d'erreur. De plus, vous
pourriez ainsi avoir des réponses de ceux qui n'ont pas VC++ (quelle
version ?) installé.
Amicalement (à cause de l'_asm ;-))
--
Pierre
> pourquoi ca veut pas compiler? > > #define F835 mov eax,7 > mov edx,17 > mul edx
Et pourquoi ça ne veut pas compiler ?
Je vois plus loin que vous avez eu votre réponse. Néanmoins, deux suggestion, la première étant AMHA une règle: * Selon le compilo, le bloc asm (ou _asm ou __asm) peut très bien être envoyé "as is" à l'assembleur (gcc?). Il ne faut donc pas présupposer que le préprocesseur va bosser à l'intérieur du bloc. Rappelons que le mot clé _asm est hors langage. Il faut donc faire une macro de tout le bloc (et la nommer en fonction de ce qu'elle fait vu du C/C++). J'avais de plus remarqué (et même sur d'autres compilos) qu'effectivement il ne faut pas utiliser la possibilté de bloc _asm{instruction1, instruction2, ..., instructionN} mais bien une série d'instructions C (ou C++) "_asm une_instruction". La notion d'instruction C/C++ (même si Microsoft specific) est importante.
* Face à ce genre de truc, faire une sortie préprocesseur.
tester le avec _asm { F835 }
Je vous trouve un peu cavalier avec votre "tester le avec ...". C'est quand même vous qui posez la question, ça ne vous trourait pas le cul de copier/coller le code complet et le message d'erreur. De plus, vous pourriez ainsi avoir des réponses de ceux qui n'ont pas VC++ (quelle version ?) installé. Amicalement (à cause de l'_asm ;-)) -- Pierre