Sto provando a compilare un vecchio progetto software C++ in Code :: Blocks utilizzando il compilatore gcc, e dopo aver risolto alcuni altri problemi, ho colpito un muro: il progetto ha un file con stile Intel inline scritto comeAssemblaggio in linea Intel in stile gcc
_asm {
code here
}
e il compilatore si rifiuta di compilarlo con "l'errore: '_asm' non è stato dichiarato in questo ambito".
Ho passato un po 'di tempo a cercare su Google le soluzioni, ma le uniche che posso trovare sono aggiungere -masm=intel
alle opzioni di compilazione (che ho provato e non riesco a far funzionare), o per convertire il codice a asm ("code here");
(che non è fattibile a causa della mera quantità di ASM). Qualcuno sa come posso ottenere gcc per compilare questo codice così com'è o dovrei rinunciare e usare un compilatore diverso?
Come creare una macro e quindi utilizzare uno script per sostituire le linee _asm con la macro. Quindi ottieni una migliore indipendenza del compilatore. – daramarak
Una macro sarebbe un'idea, anche se non l'ho mai usata prima quindi dovrei capire anche quello (nonostante quello che la mia domanda ha fatto sembrare, in realtà sono praticamente un noob completo con questa roba = /) . Inoltre, le routine asm sono collegate con etichette o qualcosa ('_asm {\ n code here \ n} L01: __asm ...'), e non sono sicuro di come gestirlo. – Dinoguy1000
Il codice non verrà compilato così com'è, sarà necessario modificarlo per farlo compilare con gcc (o usare invece MSVC). –