Boost logo

Boost :

From: Guillaume Melquiond (gmelquio_at_[hidden])
Date: 2002-10-16 06:50:37

On Wed, 16 Oct 2002, John Maddock wrote:

> > In 'interval/test', I first did 'bjam -sTOOLS=borland' and all the test
> > programs did compile and run just fine. Next, I tried 'bjam
> > -sTOOLS=borland -sBUILD=release' to see if it was still working. And none
> > of the test programs did compile (some spurious compile-errors from BCC).
> What were the errors? One problem that can occur is that Borland wrongly
> defines some C lib functions as macros in release mode is this the issue?
> John Maddock

I don't know if it was a macro problem or not. But based on what you said,
I tried to rewrite the functions. With this function, the compiler is
not happy (E2451 "Undefined symbol 'Traits'"):

  template<class T, class Traits> inline
  interval<T, Traits> interval<T, Traits>::whole()
    const T& inf = checking::inf();
    return interval<T, Traits>(-inf, inf, true);

But with this one ('Traits' is replaced by 'Policies'), it compiles fine:

  template<class T, class Policies> inline
  interval<T, Policies> interval<T, Policies>::whole()
    const T& inf = checking::inf();
    return interval<T, Policies>(-inf, inf, true);

So this problem is now fixed (but I'm quite surprised that 'Traits' should
not be used). There is another problem (E2188 "Expression syntax") with
the line 81 of 'interval/arith2.hpp' which is:

  using interval_lib::detail::pow_aux;

But I didn't find a solution by changing names. I would also like to say
that this code compiles just fine with GCC, Intel CC, Sun CC (and Borland
CC in non-release mode!).

There are also a lot of problems with Boost Test framework since E2316
"'__strcmp__' is not a member of 'std'" (I suppose there is a '#define
strcmp __strcmp__' somewhere).

So I think I just want to forget the release mode for this compiler...


Boost list run by bdawes at, gregod at, cpdaniel at, john at