On 07/18/13 08:49, dw wrote:
>
>> this issue seems t be related to a bug fixed for gcc' trunk and for
>> the 4.8 branch.
>> Could  you test more recent version to see if issue remains?
>>
>
> Umm.  Hmm.  Ok, well, the compiler now does (silently) pick one of the
> two defined implementations and uses it consistently.  I'd be
> interested to know exactly what the rule is here for what it picks.

I can confirm that with GCC 4.9. In cause of our headers, it always
chooses inline version, which is good.

> In the meantime, there's the question of what we do now.  Jacek's
> patch still gives errors under certain circumstances.  How about
> something like this (attached)?  Note that WINBASEAPI is just dllimport.

Why don't you add WINBASEAPI to GCC version independent declaration and
add version guard only to the part that currently checks
__CRT__NO_INLINE to avoid duplication? On those fixed versions dllimport
won't cause troubles anyway.

>
> This gets us back to always_inline if we can use inlines, and uses
> dllimport as a fallback.

I'd hope for better fallback on older (well, all currently released) GCC
versions, but I'm out of ideas now. So unless someone comes with a
better approach, I'm fine with the change.

Cheers,
Jacek

------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to