This is the mail archive of the mailing list for the libstdc++ project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] Remove invalid test on non-const empty strings

Jonathan Wakely wrote:

Debug mode was written to the letter of the standard, not including any
v3 extensions. IMHO this makes it very useful, in the same way as
-ansi -pedantic, for checking you haven't made any assumptions that
aren't guaranteed by the standard.

I think this is an "obvious" but at same time crucial observation, in this sense:
the concepts of "regression testsuite" and of "debug-mode" are *different*.

The first one, as we already discussed, serves the purpose of avoiding regressions
and point out as soon as possible (unexpected) changes of behavior, very often
beyond what the standard says. Indeed, very often, in the compiler area but also
in the library area, fixes and improvements are accompanied by tweaks to *existing*
testcases, if only to change expected error messages. This is ok, from the regression
testsuite point of view.

Therefore, all in all, I believe it's a mistake trying at any cost to obtain a clean
regression testsuite in debug mode. At the very least we should think more
about the issue and the real meaning of the two concepts.

In my opinion, our attitude as C++ runtime library writers should be not much
different than the attitude of normal users, wrt "debug-mode": an useful help to
find non-portable assumptions and real errors in our code, nothing less, nothing
more. In particular, should not change the way we write regression tests.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]