<br><br><b><i>Robert Shearman <rob@codeweavers.com></i></b> wrote:<blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"> Joris Huizer wrote:<br>> Hello,<br>><br>> I was looking at the result of configuring with -ansi,<br>> -pedantic flags. It gives loads of warnings (not all<br>> relevant - also complaining about 'long long' not<br>> being ansi) and indicates unnamed unions, among other<br>> things.<br>> Could someone confirm my idea that unnamed unions must<br>> all be dealt with? Am hoping to fix those if I get it<br>> to compile thus far;<br>><br>> At this point, it complains about<br>> include/wine/unicode.h which has the combination<br>> 'extern' and 'inline', which it doesn't like.<br>> Getting rid of that, with -Dinline=__inline__, helps<br>> it get a bit further<br>><br>> Next it complains about is libs/wine/string.c, which<br>> implements
several functions that are also implemented<br>> in include/wine/unicode.h. These are again the 'extern<br>> inline' functions.<br>><br>> As most headers have 'static inline' instead of<br>> 'extern inline', with the advantage of not having to<br>> duplicate the functions. I'm hoping this is an allowed<br>> fix, it gets compiling further anyway<br>> <br><br>On modern CPUs it is much better to have one copy of the function <br>instead of inlining it. Making the functions static instead of extern <br>will probably cause wine to be a bit slower at the expense of silencing <br>some not very useful warnings. If you want to fix it for this case, I <br>suggest you add a define that changes to "static inline" if <br>pedantic/ansi mode is being used and "extern inline" otherwise and use <br>it when declaring the functions.<br><br>-- <br>Rob Shearman<br><br></blockquote>Well if it isn't applied (btw how could I see what is/isn't applied?) will try to look
at that.<br><br>Though the keyword "inline" implies the code should get inlined, and if it shouldn't, the implementation copy should be removed from the unicode.h file<br><br>Joris<br><p> 
<hr size=1>Have a burning question? Go to <a href="http://answers.yahoo.com/;_ylc=X3oDMTFvbGNhMGE3BF9TAzM5NjU0NTEwOARfcwMzOTY1NDUxMDMEc2VjA21haWxfdGFnbGluZQRzbGsDbWFpbF90YWcx">Yahoo! Answers</a> and get answers from real people who know.