Commit 874d29e5 by Jason Merrill Committed by Jason Merrill

method.c (maybe_explain_implicit_delete): Use pointer_set instead of htab.

	* method.c (maybe_explain_implicit_delete): Use pointer_set
	instead of htab.

From-SVN: r175645
parent b198484e
2011-06-29 Jason Merrill <jason@redhat.com> 2011-06-29 Jason Merrill <jason@redhat.com>
* method.c (maybe_explain_implicit_delete): Use pointer_set
instead of htab.
* class.c (finalize_literal_type_property): Update conditions. * class.c (finalize_literal_type_property): Update conditions.
* method.c (defaulted_late_check): Set TYPE_HAS_CONSTEXPR_CTOR. * method.c (defaulted_late_check): Set TYPE_HAS_CONSTEXPR_CTOR.
......
...@@ -1320,21 +1320,17 @@ maybe_explain_implicit_delete (tree decl) ...@@ -1320,21 +1320,17 @@ maybe_explain_implicit_delete (tree decl)
if (DECL_DEFAULTED_FN (decl)) if (DECL_DEFAULTED_FN (decl))
{ {
/* Not marked GTY; it doesn't need to be GC'd or written to PCH. */ /* Not marked GTY; it doesn't need to be GC'd or written to PCH. */
static htab_t explained_htab; static struct pointer_set_t *explained;
void **slot;
special_function_kind sfk; special_function_kind sfk;
location_t loc; location_t loc;
bool informed; bool informed;
tree ctype; tree ctype;
if (!explained_htab) if (!explained)
explained_htab = htab_create (37, htab_hash_pointer, explained = pointer_set_create ();
htab_eq_pointer, NULL); if (pointer_set_insert (explained, decl))
slot = htab_find_slot (explained_htab, decl, INSERT);
if (*slot)
return true; return true;
*slot = decl;
sfk = special_function_p (decl); sfk = special_function_p (decl);
ctype = DECL_CONTEXT (decl); ctype = DECL_CONTEXT (decl);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment