Arrg!  That's not going to work either.

You can't inline something (which is what we are doing) AND have it be DLLIMPORT (which is what boost is doing):

/error: inlining failed in call to always_inline 'LONG InterlockedExchange(volatile LONG*, LONG)': function not inlinable/

This would work if boost didn't have their own copy of the function prototype.

Sorry Jacek, I liked your idea of changing this to inlining.

Before we surrender, is it worth talking to the boost people? Or should I just change this back to use the DLL?

dw

On 7/15/2013 6:26 PM, Kai Tietz wrote:

yeah, Jacek's patch is ok.

Kai

Am 15.07.2013 16:06 schrieb "dw" <[email protected] <mailto:[email protected]>>:


    >
    >> Inline functions are better way for forwarding calls, esp. in
    this case.
    >
    > Ok by me, but shouldn't you do all 6?

    Turns out your prediction of trouble came true faster than expected.

    Looking at the mass build report, there are a number of errors
    that all
    map to these stdcall functions.  As near as I can make out, what
    happened was this:

    Boost duplicated the lines declaring the prototypes for these
    functions
    (see
    http://svn.boost.org/svn/boost/trunk/boost/detail/interlocked.hpp).
    They declared these functions as DLLIMPORT.

    Normally not a problem, but when I did "#define InterlockedExchange
    _InterlockedExchange" in winbase, suddenly their code started looking
    for an import named "_imp___InterlockedExchange@8" (note the triple
    underscore) instead of _imp__InterlockedExchange@8 (double
    underscore).

    Jacek's proposed patch (if he does all 6 stdcall functions) should
    resolve this problem.

    dw

    
------------------------------------------------------------------------------
    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]
    <mailto:[email protected]>
    https://lists.sourceforge.net/lists/listinfo/mingw-w64-public



------------------------------------------------------------------------------
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

------------------------------------------------------------------------------
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