Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/other/accessor-fixits-2.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// { dg-options "-fdiagnostics-show-caret" } /* Test of accessors that return references. */ class t1 { public: int& get_color () { return m_color; } int& get_shape () { return m_shape; } private: int m_color; protected: int m_shape; }; int test_access_t1_color (t1 &ref) { return ref.m_color; // { dg-error ".int t1::m_color. is private within this context" } /* { dg-begin-multiline-output "" } return ref.m_color; ^~~~~~~ { dg-end-multiline-output "" } */ // { dg-message "declared private here" "" { target *-*-* } 12 } /* { dg-begin-multiline-output "" } int m_color; ^~~~~~~ { dg-end-multiline-output "" } */ // { dg-message "field .int t1::m_color. can be accessed via .int& t1::get_color\\(\\)." "" { target *-*-* } .-12 } /* { dg-begin-multiline-output "" } return ref.m_color; ^~~~~~~ get_color() { dg-end-multiline-output "" } */ } int test_access_t1_shape (t1 &ref) { return ref.m_shape; // { dg-error ".int t1::m_shape. is protected within this context" } /* { dg-begin-multiline-output "" } return ref.m_shape; ^~~~~~~ { dg-end-multiline-output "" } */ // { dg-message "declared protected here" "" { target *-*-* } 15 } /* { dg-begin-multiline-output "" } int m_shape; ^~~~~~~ { dg-end-multiline-output "" } */ // { dg-message "field .int t1::m_shape. can be accessed via .int& t1::get_shape\\(\\)." "" { target *-*-* } .-12 } /* { dg-begin-multiline-output "" } return ref.m_shape; ^~~~~~~ get_shape() { dg-end-multiline-output "" } */ } int test_deref_t1_color (t1 *ptr) { return ptr->m_color; // { dg-error ".int t1::m_color. is private within this context" } /* { dg-begin-multiline-output "" } return ptr->m_color; ^~~~~~~ { dg-end-multiline-output "" } */ /* { dg-begin-multiline-output "" } int m_color; ^~~~~~~ { dg-end-multiline-output "" } */ // { dg-message "field .int t1::m_color. can be accessed via .int& t1::get_color\\(\\)." "" { target *-*-* } .-12 } /* { dg-begin-multiline-output "" } return ptr->m_color; ^~~~~~~ get_color() { dg-end-multiline-output "" } */ } int test_deref_t1_shape (t1 *ptr) { return ptr->m_shape; // { dg-error ".int t1::m_shape. is protected within this context" } /* { dg-begin-multiline-output "" } return ptr->m_shape; ^~~~~~~ { dg-end-multiline-output "" } */ /* { dg-begin-multiline-output "" } int m_shape; ^~~~~~~ { dg-end-multiline-output "" } */ // { dg-message "field .int t1::m_shape. can be accessed via .int& t1::get_shape\\(\\)." "" { target *-*-* } .-12 } /* { dg-begin-multiline-output "" } return ptr->m_shape; ^~~~~~~ get_shape() { dg-end-multiline-output "" } */ }