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 220164 - org.netbeans.modules.cnd.modelimpl.csm.AstRendererException in inaccuracy tests
Summary: org.netbeans.modules.cnd.modelimpl.csm.AstRendererException in inaccuracy tests
Status: STARTED
Alias: None
Product: cnd
Classification: Unclassified
Component: Code Model (show other bugs)
Version: 7.3
Hardware: PC Solaris
: P4 normal (vote)
Assignee: issues@cnd
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-10-16 11:59 UTC by soldatov
Modified: 2013-05-07 11:21 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 2012-10-16 11:59:43 UTC
Scenario:
- Create C++ project
- Set -std=c++0x
- Add such code:

template<class T1> class A { 
  template<class T2> class B {
    template<class T3> void mf1(T3); 
    void mf2();
  };
}; 

template<> template<class X>
class A<long>::B { }; 

template<> template<> template<class T>
  void A<int>::B<double>::mf1(T t) { } 

int main() {
    return 0;
}

- Start IDE with fresh user dir
- Open project and file
- check messages.log
==>
INFO [org.netbeans.modules.cnd.api.project.NativeProjectRegistry]: Open native project CppApplication_2 /export/files/NB/CppApplication_2
org.netbeans.modules.cnd.modelimpl.csm.AstRendererException: 
/export/files/NB/CppApplication_2/main.cpp:9:1: error: Empty class specialization name.
	at org.netbeans.modules.cnd.modelimpl.csm.AstRendererException.throwAstRendererException(AstRendererException.java:65)
	at org.netbeans.modules.cnd.modelimpl.csm.ClassImplSpecialization.initQualifiedName(ClassImplSpecialization.java:125)
	at org.netbeans.modules.cnd.modelimpl.csm.ClassImplSpecialization.init(ClassImplSpecialization.java:98)
	at org.netbeans.modules.cnd.modelimpl.csm.ClassImplSpecialization.create(ClassImplSpecialization.java:144)
	at org.netbeans.modules.cnd.modelimpl.csm.core.AstRenderer.render(AstRenderer.java:245)
	at org.netbeans.modules.cnd.modelimpl.csm.core.AstRenderer.render(AstRenderer.java:112)
	at org.netbeans.modules.cnd.modelimpl.parser.ParserProviderImpl$Antlr2CppParser.render(ParserProviderImpl.java:201)
	at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl._parse(FileImpl.java:1039)
	at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl.ensureParsed(FileImpl.java:544)
	at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread._run(ParserThread.java:149)
	at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:75)
	at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:92)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1454)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2036)
org.netbeans.modules.cnd.modelimpl.csm.AstRendererException: 
/export/files/NB/CppApplication_2/main.cpp:12:1: error: Empty function name.
	at org.netbeans.modules.cnd.modelimpl.csm.AstRendererException.throwAstRendererException(AstRendererException.java:65)
	at org.netbeans.modules.cnd.modelimpl.csm.FunctionImpl.create(FunctionImpl.java:157)
	at org.netbeans.modules.cnd.modelimpl.csm.core.AstRenderer.render(AstRenderer.java:271)
	at org.netbeans.modules.cnd.modelimpl.csm.core.AstRenderer.render(AstRenderer.java:112)
	at org.netbeans.modules.cnd.modelimpl.parser.ParserProviderImpl$Antlr2CppParser.render(ParserProviderImpl.java:201)
	at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl._parse(FileImpl.java:1039)
	at org.netbeans.modules.cnd.modelimpl.csm.core.FileImpl.ensureParsed(FileImpl.java:544)
	at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread._run(ParserThread.java:149)
	at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThread.run(ParserThread.java:75)
	at org.netbeans.modules.cnd.modelimpl.csm.core.ParserThreadManager$Wrapper.run(ParserThreadManager.java:92)
	at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1454)
	at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2036)
not found declaration for self: CLASS B<class T2>[33-119][main.cpp 3:3-6:4]; use CLASS A::B[155-175][main.cpp 10:1-10:21]
not found declaration for self: CLASS B<class T2>[33-119][main.cpp 3:3-6:4]; use CLASS A::B[155-175][main.cpp 10:1-10:21]
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Resolving dependencies took: 2 ms
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Complete indexing of 0 binary roots took: 1 ms
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Complete indexing of 0 source roots took: 0 ms (New or modified files: 0, Deleted files: 0) [Adding listeners took: 0 ms]
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Resolving dependencies took: 3 ms
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Complete indexing of 0 binary roots took: 0 ms
INFO [org.netbeans.modules.subversion]: Finished indexing svn cache with 0 entries. Elapsed time: 0 ms.
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Indexing of: /opt/netbeans-dev/ide/jsstubs/allstubs.zip took: 2,113 ms (New or modified files: 174, Deleted files: 0) [Adding listeners took: 0 ms]
INFO [org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater]: Complete indexing of 1 source roots took: 2,113 ms (New or modified files: 174, Deleted files: 0) [Adding listeners took: 0 ms]
Comment 1 nnnnnk 2012-10-24 13:45:29 UTC
That's expected exceptions.

We do not support this:
Sample:
template<> template<class X>
class A<long>::B { };