diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-12-14 18:11:32 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-12-14 18:11:32 +0000 |
commit | 89c6e7ac34e495615ffe46106e955831a723970f (patch) | |
tree | e6e9944a368a540518b4ebb2656349811e9eb285 /gcc | |
parent | 9ac190b54e296f2f5a0997fc968dd580a8ba3545 (diff) | |
download | gcc-89c6e7ac34e495615ffe46106e955831a723970f.zip gcc-89c6e7ac34e495615ffe46106e955831a723970f.tar.gz gcc-89c6e7ac34e495615ffe46106e955831a723970f.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/cp/dump.c | 5 | ||||
-rw-r--r-- | gcc/cp/error.c | 4 | ||||
-rw-r--r-- | gcc/cp/ir.texi | 14 |
4 files changed, 29 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 221dbd4..3f44c78 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -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> * class.c (finish_base_struct): Allow multiple COM base classes diff --git a/gcc/cp/dump.c b/gcc/cp/dump.c index c042f0a..f66a5f1 100644 --- a/gcc/cp/dump.c +++ b/gcc/cp/dump.c @@ -600,7 +600,10 @@ dequeue_and_dump (di) and therefore many other macros do not work on it. */ if (t == std_node) 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; case TEMPLATE_DECL: diff --git a/gcc/cp/error.c b/gcc/cp/error.c index 2b7b4ea..e6d3084 100644 --- a/gcc/cp/error.c +++ b/gcc/cp/error.c @@ -1817,6 +1817,10 @@ dump_expr (t, flags) dump_expr (TREE_OPERAND (t, 0), flags); break; + case EXPR_WITH_FILE_LOCATION: + dump_expr (EXPR_WFL_NODE (t), flags); + break; + case CONSTRUCTOR: if (TREE_TYPE (t) && TYPE_PTRMEMFUNC_P (TREE_TYPE (t))) { diff --git a/gcc/cp/ir.texi b/gcc/cp/ir.texi index cb6e138..f3b5039 100644 --- a/gcc/cp/ir.texi +++ b/gcc/cp/ir.texi @@ -617,6 +617,17 @@ same name. This macro returns the enclosing namespace. The @code{DECL_CONTEXT} for 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 This function will return the declarations contained in the namespace, 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 @code{PARM_DECL} nodes will appear here. +This function cannot be used with namespaces that have +@code{DECL_NAMESPACE_ALIAS} set. + @end ftable @c --------------------------------------------------------------------- |