diff options
author | lerdsuwa <lerdsuwa@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-05-11 16:16:47 +0000 |
---|---|---|
committer | lerdsuwa <lerdsuwa@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-05-11 16:16:47 +0000 |
commit | e8a37e5343a106d07748767417f494885cdff5d5 (patch) | |
tree | de5077a3e2d0272f0d92a22b89ad9dfed04c19fb | |
parent | 6011140f85e0d4cd56c98cddda482e49f46fa462 (diff) | |
download | gcc-e8a37e5343a106d07748767417f494885cdff5d5.tar.gz |
* method.c (synthesize_method): Call push/pop_deferring_access_checks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66694 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/cp/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/method.c | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index a11a50218b3..8e19ceec6cd 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,9 @@ 2003-05-11 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> + * method.c (synthesize_method): Call push/pop_deferring_access_checks. + +2003-05-11 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> + PR c++/10230, c++/10481 * semantics.c (finish_non_static_data_member): Handle when the non-static member is not from a base of the current class type. diff --git a/gcc/cp/method.c b/gcc/cp/method.c index 12fa9230b4c..51af020f385 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -741,6 +741,10 @@ synthesize_method (tree fndecl) return; } + /* We may be in the middle of deferred access check. Disable + it now. */ + push_deferring_access_checks (dk_no_deferred); + if (! context) push_to_top_level (); else if (nested) @@ -790,6 +794,8 @@ synthesize_method (tree fndecl) pop_from_top_level (); else if (nested) pop_function_context_from (context); + + pop_deferring_access_checks (); } /* Use EXTRACTOR to locate the relevant function called for each base & |