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.
To improve responsiveness and reduce memory we should postpone parsing of function's bodies.
use balanceCurlies alternative in case of lazy bodies and put it under CSM_COMPOUND_STATEMENT_LAZY, then on request of function body build underlined full AST
Fixed by: - introduced new FakeAST node for lazy content of compound statement - all compound statements impl in model are responsible for restoring own full tree, as result it's transparent for functions, it works for any compound statement. - flag to turn off "cnd.modelimpl.excl.compound" (it is ON by default) - getter for underlined token from CsmAST - token stream around lazy compound subtree CVS log: Checking in antlr2/CPPParserEx.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/antlr2/CPPParserEx.java,v <-- CPPParserEx.java new revision: 1.2.2.2; previous revision: 1.2.2.1 done Checking in antlr2/CsmAST.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/antlr2/CsmAST.java,v <-- CsmAST.java new revision: 1.2.2.4; previous revision: 1.2.2.3 done Checking in antlr2/cppparser.g; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/antlr2/cppparser.g,v <-- cppparser.g new revision: 1.2.2.2; previous revision: 1.2.2.1 done Checking in csm/core/FileImpl.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/FileImpl.java,v <-- FileImpl.java new revision: 1.2.2.7; previous revision: 1.2.2.6 done Checking in csm/core/TraceFlags.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/TraceFlags.java,v <-- TraceFlags.java new revision: 1.2.2.6; previous revision: 1.2.2.5 done Checking in csm/core/AstRenderer.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/core/AstRenderer.java,v <-- AstRenderer.java new revision: 1.2.2.3; previous revision: 1.2.2.2 done Checking in csm/deep/CompoundStatementImpl.java; /shared/data/ccvs/repository/cnd/modelimpl/src/org/netbeans/modules/cnd/modelimpl/csm/deep/CompoundStatementImpl.java,v <-- CompoundStatementImpl.java new revision: 1.2.2.2; previous revision: 1.2.2.1 done