List:Commits« Previous MessageNext Message »
From:Davi Arnaut Date:July 22 2010 11:51am
Subject:Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498
View as plain text  
On 7/22/10 4:12 AM, Sergei Golubchik wrote:
> Hi, Davi!
>
> On Jul 21, Davi Arnaut wrote:
>>
>> So.. it seems the scenario is tries to workaround is: compiler does not
>> support inline and compiler/linker does not remove unused static functions.
>>
>> Some tests:
>>
>> - AIX 5.3, VisualAge C++ 6 (2003)
>>
>> Compiler understand __inline__.
>> The linker removes unused static functions by default.
>>
>> - HP-UX, C compiler B3910B A.06.01 (2005)
>>
>> Compiler understands __inline.
>> Compiler removes unused static functions when optimizing.
>>
>> - Solaris 9, Sun C 5.6 (2004)
>>
>> Compiler understands inline.
>> Compiler removes unused static functions when optimizing.
>>
>> - GCC 3.3.5 (2005)
>>
>> Compiler understands inline.
>> Compiler/linker does not remove unused static functions, but it removes
>> unused static /inline/ functions when optimizing.
>>
>> Sergei,
>> Do you remember in which system this was causing trouble?
>
> No, sorry.
>
> And note - when compiler supports explicit inline syntax in any form, it
> will be used - autoconf (and cmake, as far as I understand) will #define
> "inline" to be __inline or __inline__ or whatever appropriate.

Yes. AC_C_INLINE checks for inline __inline__ __inline.

> So, the problem, indeed, may exist only for compilers that do not
> support inline with any keyword (and "inline" is defined to be an empty
> string by the autoconf).

Agree. In any case, I'll add a AC_MSG_WARN depending on ac_cv_c_inline.

> But you seem to say that even such an ancient compiler - which should be
> irrelevant by now - will remove unused static functions, at least in
> opimized builds.
>
> Okay, fine. Then it's not an issue at all.

Thanks.
Thread
bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132)WL#5498Sergei Golubchik21 Jul
  • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
    • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132)WL#5498Sergei Golubchik21 Jul
      • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
        • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132)WL#5498Sergei Golubchik21 Jul
          • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
            • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132)WL#5498Sergei Golubchik21 Jul
              • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
                • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132)WL#5498Sergei Golubchik21 Jul
                  • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
                    • RE: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Vladislav Vaintroub21 Jul
                      • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul
                        • RE: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Vladislav Vaintroub21 Jul
                          • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut22 Jul
                            • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132)WL#5498Sergei Golubchik22 Jul
                              • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut22 Jul
        • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Konstantin Osipov21 Jul
          • Re: bzr commit into mysql-trunk-bugfixing branch (davi:3132) WL#5498Davi Arnaut21 Jul