diff options
Diffstat (limited to 'src/systemc/tests/systemc/bugs/bug_185')
-rw-r--r-- | src/systemc/tests/systemc/bugs/bug_185/bug_185.cpp | 26 | ||||
-rw-r--r-- | src/systemc/tests/systemc/bugs/bug_185/golden/bug_185.log | 8 |
2 files changed, 34 insertions, 0 deletions
diff --git a/src/systemc/tests/systemc/bugs/bug_185/bug_185.cpp b/src/systemc/tests/systemc/bugs/bug_185/bug_185.cpp new file mode 100644 index 000000000..d314a3504 --- /dev/null +++ b/src/systemc/tests/systemc/bugs/bug_185/bug_185.cpp @@ -0,0 +1,26 @@ +// Bug 185 Test - sc_bv(char) constructor. +// +// sc_bv<8> a('1') was yielding an all-zero value rather than all ones. + + +#include "systemc.h" + +int sc_main(int argc, char* argv[]) +{ + sc_bv<8> a('0'); + sc_bv<9> b('1'); + sc_bv<11> c(false); + sc_bv<11> d(true); + sc_bv<11> e(0); + sc_bv<11> f(1); + + cout << "a = " << a << endl; + cout << "b = " << b << endl; + cout << "c = " << c << endl; + cout << "d = " << d << endl; + cout << "e = " << e << endl; + cout << "f = " << f << endl; + + cerr << "Program completed" << endl; + return 0; +} diff --git a/src/systemc/tests/systemc/bugs/bug_185/golden/bug_185.log b/src/systemc/tests/systemc/bugs/bug_185/golden/bug_185.log new file mode 100644 index 000000000..e022eb2d5 --- /dev/null +++ b/src/systemc/tests/systemc/bugs/bug_185/golden/bug_185.log @@ -0,0 +1,8 @@ +SystemC Simulation +a = 00000000 +b = 111111111 +c = 00000000000 +d = 11111111111 +e = 00000000000 +f = 00000000001 +Program completed |