On Sun, 3 Aug 2008, Basile STARYNKEVITCH wrote:

> I also am in favor of having some stuff in GCC which use external libraries,
> provided this stuff can be disabled at configure time.

My view as a general principle is that options such as -O2 must have 
exactly the same results regardless of how GCC is configured, whether -g 
is used (apart from debug info differences), whether precompiled headers 
are used, what host GCC is running on, what libraries it uses, what 
versions of them it uses or how those libraries are configured.  So 
anything optional can't be included in an option that's supported with it 
missing; any option enabling an optional feature must give an error if the 
relevant code is not linked in.

Any differences in code generated (or diagnostics given, etc.) based on 
the above factors are bugs.  Of course such bugs exist, but we should take 
reasonable care about not introducing new ones.  This means obvious things 
such as not putting an optional feature into an option that is accepted 
without the feature enabled, as well as checking new host libraries for 
how they might affect the above.

Separately, we know that options not included in -On are liable to bit-rot 
so we need to be quite careful when adding them, balancing the risks of 
bit-rot and the costs of additional build dependencies, together with how 
advantageous the option would be likely to be in -On.

-- 
Joseph S. Myers
[EMAIL PROTECTED]

Reply via email to