Nee want een char kan geen utf8 teken >127 bevatten. Een van de nadelen van UTF8, zelfs relatief simpele tekens worden multibyte.
Alles is een conversie. Die dollar notatie moet ook geconverteerd worden. Zolang het maar in de compiler gebeurt, en geen invloed heeft op de gegenereerde code.
De gegenereerde code produceert voor het label (dat direct aan "assign" wordt doorgegeven):
Delphi Code:
section .rodata.n__$PROGRAM$_Ld1,"d"
.balign 4
.short 65001,1
.long -1,2
.globl _$PROGRAM$_Ld1
_$PROGRAM$_Ld1:
.ascii "\302\251\000"
\302 is octaal voor $C2 en \251 is $A9 en \000 is de terminerende null. De -1 is de refcount (negatief voor constanten) en 2 is de lengte. 65001 is de encoding. De ",1" daarachter is de element size (staat helpers toe te delen tussen 1 en 2-byte strings)
Bookmarks