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
This commit is contained in:
Mark Mitchell 1999-12-14 18:11:32 +00:00 committed by Mark Mitchell
parent 9ac190b54e
commit 89c6e7ac34
4 changed files with 29 additions and 1 deletions

View File

@ -1,3 +1,10 @@
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

View File

@ -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:

View File

@ -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)))
{ {

View File

@ -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
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 ---------------------------------------------------------------------