Commit 89c6e7ac by Mark Mitchell Committed by Mark Mitchell

dump.c (dequeue_and_dump): Dump DECL_NAMESPACE_ALIAS.

	* dump.c (dequeue_and_dump): Dump DECL_NAMESPACE_ALIAS.
	* ir.texi (DECL_NAMESPACE_ALIAS): Document it.

	* error.c (dump_expr): Handle EXPR_WITH_FILE_LOCATION.

From-SVN: r30925
parent 9ac190b5
1999-12-14 Mark Mitchell <mark@codesourcery.com>
* dump.c (dequeue_and_dump): Dump DECL_NAMESPACE_ALIAS.
* ir.texi (DECL_NAMESPACE_ALIAS): Document it.
* error.c (dump_expr): Handle EXPR_WITH_FILE_LOCATION.
1999-12-14 Mumit Khan <khan@xraylith.wisc.edu> 1999-12-14 Mumit Khan <khan@xraylith.wisc.edu>
* class.c (finish_base_struct): Allow multiple COM base classes * class.c (finish_base_struct): Allow multiple COM base classes
......
...@@ -600,7 +600,10 @@ dequeue_and_dump (di) ...@@ -600,7 +600,10 @@ dequeue_and_dump (di)
and therefore many other macros do not work on it. */ and therefore many other macros do not work on it. */
if (t == std_node) if (t == std_node)
break; break;
dump_child ("dcls", cp_namespace_decls (t)); if (DECL_NAMESPACE_ALIAS (t))
dump_child ("alis", DECL_NAMESPACE_ALIAS (t));
else
dump_child ("dcls", cp_namespace_decls (t));
break; break;
case TEMPLATE_DECL: case TEMPLATE_DECL:
......
...@@ -1817,6 +1817,10 @@ dump_expr (t, flags) ...@@ -1817,6 +1817,10 @@ dump_expr (t, flags)
dump_expr (TREE_OPERAND (t, 0), flags); dump_expr (TREE_OPERAND (t, 0), flags);
break; break;
case EXPR_WITH_FILE_LOCATION:
dump_expr (EXPR_WFL_NODE (t), flags);
break;
case CONSTRUCTOR: case CONSTRUCTOR:
if (TREE_TYPE (t) && TYPE_PTRMEMFUNC_P (TREE_TYPE (t))) if (TREE_TYPE (t) && TYPE_PTRMEMFUNC_P (TREE_TYPE (t)))
{ {
......
...@@ -617,6 +617,17 @@ same name. ...@@ -617,6 +617,17 @@ same name.
This macro returns the enclosing namespace. The @code{DECL_CONTEXT} for This macro returns the enclosing namespace. The @code{DECL_CONTEXT} for
the @code{global_namespace} is @code{NULL_TREE}. the @code{global_namespace} is @code{NULL_TREE}.
@item DECL_NAMESPACE_ALIAS
If this declaration is for a namespace alias, then
@code{DECL_NAMESPACE_ALIAS} is the namespace for which this one is an
alias.
Do not attempt to use @code{cp_namespace_decls} for a namespace which is
an alias. Instead, follow @code{DECL_NAMESPACE_ALIAS} links until you
reach an ordinary, non-alias, namespace, and call
@code{cp_namespace_decls} there.
@item cp_namespace_decls @item cp_namespace_decls
This function will return the declarations contained in the namespace, This function will return the declarations contained in the namespace,
including types, overloaded functions, other namespaces, and so forth. including types, overloaded functions, other namespaces, and so forth.
...@@ -637,6 +648,9 @@ list, @xref{Declarations}. Some declarations will not appear on this ...@@ -637,6 +648,9 @@ list, @xref{Declarations}. Some declarations will not appear on this
list. In particular, no @code{FIELD_DECL}, @code{LABEL_DECL}, or list. In particular, no @code{FIELD_DECL}, @code{LABEL_DECL}, or
@code{PARM_DECL} nodes will appear here. @code{PARM_DECL} nodes will appear here.
This function cannot be used with namespaces that have
@code{DECL_NAMESPACE_ALIAS} set.
@end ftable @end ftable
@c --------------------------------------------------------------------- @c ---------------------------------------------------------------------
......
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