Frits van Bommel wrote:
Is it really that hard? Can't you just detect this case (non-void function without a 'return' at the end but with inline asm inside)?

Since the compiler should know the calling convention[1], the register that will contain the return value of the function should be a simple lookup (based on target architecture, cc and return type).
Just add that register as an output of the inline asm and return it...

dmd doesn't attempt to figure out which register is the return value. It just assumes that the registers specified by the ABI for the function's return type have the proper return value in them.

Reply via email to