add coverage for the const correctness cases
actually the positive cases only. In another step, I'll add all those combinations which won't compile.
This commit is contained in:
parent
69bf324a1e
commit
504ff07fc0
1 changed files with 21 additions and 0 deletions
|
|
@ -148,6 +148,27 @@ namespace test {
|
|||
D* pNull(0);
|
||||
VERIFY_ERROR(BOTTOM_VALUE, AccessCasted<D>::access(pNull));
|
||||
|
||||
cout << "=== const correctness ==="<<endl;
|
||||
cout << "Access(D as D const&) --->" << AccessCasted<D const&>::access(d) <<endl;
|
||||
cout << "Access(D& as D const&) --->" << AccessCasted<D const&>::access(rD) <<endl;
|
||||
cout << "Access(D as const D) --->" << AccessCasted<const D>::access(d) <<endl;
|
||||
cout << "Access(D& as const D) --->" << AccessCasted<const D>::access(rD) <<endl;
|
||||
cout << "Access(D as const D*) --->" << AccessCasted<const D*>::access(d) <<endl;
|
||||
cout << "Access(D& as const D*) --->" << AccessCasted<const D*>::access(rD) <<endl;
|
||||
cout << "Access(D* as D const&) --->" << AccessCasted<D const&>::access(pD) <<endl;
|
||||
cout << "Access(D* as const D) --->" << AccessCasted<const D>::access(pD) <<endl;
|
||||
const D cD(d);
|
||||
D const& rcD(d);
|
||||
const D* pcD(&cD);
|
||||
cout << "Access(const D as D const&) --->" << AccessCasted<D const&>::access(cD) <<endl;
|
||||
cout << "Access(D const& as D const&) --->" << AccessCasted<D const&>::access(rcD) <<endl;
|
||||
cout << "Access(const D as const D) --->" << AccessCasted<const D>::access(cD) <<endl;
|
||||
cout << "Access(D const& as const D) --->" << AccessCasted<const D>::access(rcD) <<endl;
|
||||
cout << "Access(const D as const D*) --->" << AccessCasted<const D*>::access(cD) <<endl;
|
||||
cout << "Access(D const& as const D*) --->" << AccessCasted<const D*>::access(rcD) <<endl;
|
||||
cout << "Access(const D* as D const&) --->" << AccessCasted<D const&>::access(pcD) <<endl;
|
||||
cout << "Access(const D* as const D) --->" << AccessCasted<const D>::access(pcD) <<endl;
|
||||
|
||||
cout << "=== work cases: actual conversions ==="<<endl;
|
||||
// cout << "Access(B& as D&) --->" << AccessCasted<D&>::access(rB) <<endl;
|
||||
// cout << "Access(D* as D*) --->" << AccessCasted<D*>::access(pD) <<endl;
|
||||
|
|
|
|||
Loading…
Reference in a new issue