From fa8b674ef4cb32cb92bcc4f3d42bf24b8cf3b7fb Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 17 Jul 2015 12:53:58 +0200 Subject: Diagnose "composite type used before definition" situations --- odb/semantics/elements.cxx | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'odb/semantics/elements.cxx') diff --git a/odb/semantics/elements.cxx b/odb/semantics/elements.cxx index 21e3260..43fb379 100644 --- a/odb/semantics/elements.cxx +++ b/odb/semantics/elements.cxx @@ -48,6 +48,23 @@ namespace semantics // bool nameable:: + in_scope (scope_type& s) + { + for (scope_type* p (&scope ());; p = &p->scope_ ()) + { + //@@ Need to handle namespace extensions. + // + if (p == &s) + return true; + + if (p->global_scope ()) + break; + } + + return false; + } + + bool nameable:: anonymous_ () const { tree n (tree_node ()); -- cgit v1.1