This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 243508 - inaccuracy tests (clang): 'using typename' in namespace
Summary: inaccuracy tests (clang): 'using typename' in namespace
Status: VERIFIED FIXED
Alias: None
Product: cnd
Classification: Unclassified
Component: Code Model (show other bugs)
Version: 8.0.1
Hardware: PC Solaris
: P2 normal (vote)
Assignee: petrk
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-03 10:18 UTC by soldatov
Modified: 2014-04-24 02:10 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description soldatov 2014-04-03 10:18:40 UTC
File: CXX/dcl.dcl/basic.namespace/namespace.udecl/p1.cpp
Errors:
CXX/dcl.dcl/basic.namespace/namespace.udecl/p1.cpp 61 unexpected token: using
CXX/dcl.dcl/basic.namespace/namespace.udecl/p1.cpp 62 unexpected token: using

namespace Test1 {
  namespace A {
    class a {};
  }

  namespace B {
    typedef class {} b;
  }

  namespace C {
    int c(); // expected-note {{target of using declaration}}
  }

  namespace D {
    using typename A::a;
    using typename B::b;
    using typename C::c; // expected-error {{'typename' keyword used on a non-type}}

    a _1 = A::a();
    b _2 = B::b();
  }
}
Comment 1 soldatov 2014-04-03 10:47:58 UTC
File: CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp
Errors:
CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp 168 unexpected token: using
CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp 169 unexpected token: using
Expected error: CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp 171 unexpected token: using
Expected error: CXX/dcl.dcl/basic.namespace/namespace.udecl/p4.cpp 172 unexpected token: using


namespace test3 {
  struct hiding {};

  template <class T> struct A {
    typedef int type; // expected-note {{target of using declaration}}
    struct hiding {};
    union { double union_member; }; // expected-note {{target of using declaration}}
    enum tagname { enumerator }; // expected-note 2 {{target of using declaration}}
  };

  template <class T> struct C : A<T> {
    using typename A<T>::type;
    using typename A<T>::union_member; // expected-error {{'typename' keyword used on a non-type}}
    using typename A<T>::enumerator; // expected-error {{'typename' keyword used on a non-type}}
  };
}
Comment 2 petrk 2014-04-16 13:18:39 UTC
Fixed in hg.netbeans.org/cnd-main/rev/cf72643a3a92
Comment 3 Quality Engineering 2014-04-18 02:42:27 UTC
Integrated into 'main-silver', will be available in build *201404180001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/cf72643a3a92
User: Petr Kudryavtsev <petrk@netbeans.org>
Log: Fixed #243508 - inaccuracy tests (clang): 'using typename' in namespace
Comment 4 soldatov 2014-04-22 07:10:13 UTC
verified
no errors in latest test report
Comment 5 Quality Engineering 2014-04-24 02:10:58 UTC
Integrated into 'releases/release80', will be available in build *201404240045* or newer. Wait for official and publicly available build.

Changeset: http://hg.netbeans.org/releases/rev/15347a26b13c
User: Petr Kudryavtsev <petrk@netbeans.org>
Log: Fixed #243508 - inaccuracy tests (clang): 'using typename' in namespace
(transplanted from cf72643a3a9264457ecac0e5e59e42d116c98eae)