mirror of
https://github.com/scummvm/scummvm.git
synced 2026-05-21 05:40:43 +00:00
TEST: Fix CxxTest::ErrorPrinter with --no-std
This commit is contained in:
@@ -16,30 +16,18 @@
|
||||
// The ErrorPrinter is a simple TestListener that
|
||||
// just prints "OK" if everything goes well, otherwise
|
||||
// reports the error in the format of compiler messages.
|
||||
// The ErrorPrinter uses std::cout
|
||||
// The ErrorPrinter uses stdout
|
||||
//
|
||||
|
||||
#include <cxxtest/Flags.h>
|
||||
|
||||
#ifndef _CXXTEST_HAVE_STD
|
||||
# define _CXXTEST_HAVE_STD
|
||||
#endif // _CXXTEST_HAVE_STD
|
||||
|
||||
#include <cxxtest/ErrorFormatter.h>
|
||||
#include <cxxtest/StdValueTraits.h>
|
||||
|
||||
#ifdef _CXXTEST_OLD_STD
|
||||
# include <iostream.h>
|
||||
#else // !_CXXTEST_OLD_STD
|
||||
# include <iostream>
|
||||
#endif // _CXXTEST_OLD_STD
|
||||
#include <stdio.h>
|
||||
|
||||
namespace CxxTest
|
||||
{
|
||||
class ErrorPrinter : public ErrorFormatter
|
||||
{
|
||||
public:
|
||||
ErrorPrinter(CXXTEST_STD(ostream) &o = CXXTEST_STD(cout), const char *preLine = ":", const char *postLine = "",
|
||||
ErrorPrinter(FILE *o = stdout, const char *preLine = ":", const char *postLine = "",
|
||||
const char *errorString = "Error",
|
||||
const char *warningString = "Warning") :
|
||||
ErrorFormatter(new Adapter(o), preLine, postLine, errorString, warningString) {}
|
||||
@@ -48,19 +36,17 @@ public:
|
||||
private:
|
||||
class Adapter : public OutputStream
|
||||
{
|
||||
CXXTEST_STD(ostream) &_o;
|
||||
Adapter(const Adapter &);
|
||||
Adapter &operator=(const Adapter &);
|
||||
|
||||
FILE *_o;
|
||||
|
||||
public:
|
||||
Adapter(CXXTEST_STD(ostream) &o) : _o(o) {}
|
||||
void flush() { _o.flush(); }
|
||||
OutputStream &operator<<(const char *s) { _o << s; return *this; }
|
||||
Adapter(FILE *o) : _o(o) {}
|
||||
void flush() { fflush(_o); }
|
||||
OutputStream &operator<<(unsigned i) { fprintf(_o, "%u", i); return *this; }
|
||||
OutputStream &operator<<(const char *s) { fputs(s, _o); return *this; }
|
||||
OutputStream &operator<<(Manipulator m) { return OutputStream::operator<<(m); }
|
||||
OutputStream &operator<<(unsigned i)
|
||||
{
|
||||
char s[1 + 3 * sizeof(unsigned)];
|
||||
numberToString(i, s);
|
||||
_o << s;
|
||||
return *this;
|
||||
}
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace CxxTest
|
||||
class MSVCErrorPrinter : public ErrorPrinter
|
||||
{
|
||||
public:
|
||||
MSVCErrorPrinter(CXXTEST_STD(ostream) &o = CXXTEST_STD(cout))
|
||||
MSVCErrorPrinter(FILE *o = stdout)
|
||||
: ErrorPrinter(o, "(", ") ", "error C2999", "warning C4999") {}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ namespace CxxTest
|
||||
class ParenPrinter : public ErrorPrinter
|
||||
{
|
||||
public:
|
||||
ParenPrinter(CXXTEST_STD(ostream) &o = CXXTEST_STD(cout)) : ErrorPrinter(o, "(", ")") {}
|
||||
ParenPrinter(FILE *o = stdout) : ErrorPrinter(o, "(", ")") {}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user