digitalmars.D.bugs - [Bug 116] New: Inline Assembler offset keyword
- d-bugmail puremagic.com (46/46) Apr 27 2006 http://d.puremagic.com/bugzilla/show_bug.cgi?id=116
http://d.puremagic.com/bugzilla/show_bug.cgi?id=116 Summary: Inline Assembler offset keyword Product: D Version: 0.155 Platform: PC OS/Version: Windows Status: NEW Keywords: accepts-invalid, diagnostic, wrong-code Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: lugaidster gmail.com The compiler confuses offset keyword in the inline assembler with .offsetof property and issues a deprecated keyword error. This is easily reproduced by compiling the following: CODE: int[5] bar; void foo() { asm { mov ECX,offset bar; } } a workaround would be to do this: int[5] bar; void foo() { void* pbar = &bar; asm { mov ECX,pbar; } } after issuing the error it says to use offsetof instead, and when you write: int[5] bar; void foo() { asm { mov ECX,offsetof bar; } } it compiles and runs until a runtime error is issued. --
Apr 27 2006