Herold Heiko <[EMAIL PROTECTED]> writes:

> However there are still lots of people using Windows NT 4 or even
> win95/win98, with old compilers, where the compilation won't work
> without the patch.  Even if we place a comment in the source file or
> the windows/Readme many of those will be discouraged, say those who
> do have a compiler but aren't really developers (yet) (for example
> first year CS students with old lab computer compilers).

>From my impressions of the Windows world, non-developers won't touch
source code anyway -- they will simply use the binary.

The really important thing is to make sure that the source works for
the person likely to create the binaries, in this case you.  Ideally
he should have access to the latest compiler, so we don't have to
cater to brokenness of obsolete compiler versions.  This is not about
Microsoft bashing, either: at at least one point Wget triggered a GCC
bug; I never installed the (ugly) workaround because later versions of
GCC fixed the bug.

Also note that there is a technical problem with your patch (if my
reading of it is correct): it unconditionally turns on debugging,
disregarding the command-line options.  Is it possible to save the old
optimization options, turn off debugging, and restore the old options?
(Borland C seems to support some sort of "#pragma push" to achieve
that effect.)

There are other possibilities, too:

* Change the Makefile to compile the offending files without
  optimization, or with a lesser optimization level.  Ideally this
  would be done by configure.bat if it detects the broken compiler
  version.

* Change the Makefile to simply not use optimization by default.  This
  is suboptimal, but would not be a big problem for Wget in practice
  -- the person creating the binaries would use optimization in his
  build, which means most people would still have access to an
  optimized Wget.

> Not yet, but I will certainly.  Nevertheless, I think the point is
> the "continue to support existing installation if possble" issue,
> after all VC6 is not free either, and at least one newer commercial
> VC version has been reported to compile without problems. Those,
> however, certainly don't support Win95, probably don't Win98/ME
> or/and NT4 either (didn't yet check though).

You mean that you cannot use later versions of C++ to produce
Win95/Win98/NT4 binaries?  I'd be very surprised if that were the
case!

> Personally I feel wget should try to still support that not-so-old
> compiler platform if possible,

Sure, but in this case some of the burden falls on the user of the
obsolete platform: he has to turn off optimization to avoid a bug in
his compiler.  That is not entirely unacceptable.

Reply via email to