DJ Delorie wrote: > But a compile-time assigment of a symbol to a pointer should "just > work" as long as the assembler supports it (I fixed that bug some > months ago).
There's no reason you can't make the built-in automatically folded by the front-end so that you still get a constant expression. I understand that this isn't the syntax you write, in that you have to write: static ptr32_t x = __builtin_ptr32 (f); instead of: static void (*far x)() = f; but I think you're much more likely to actually get the built-in approach to work correctly in C++. -- Mark Mitchell CodeSourcery [EMAIL PROTECTED] (650) 331-3385 x713