[CEDET-devel] Template class & macro argument problem, automatic reparsing
Brought to you by:
zappo
From: Hannu K. <az...@ik...> - 2009-03-06 12:51:43
|
Hi, With highlight unmatched syntax on and the following file: ----- namespace Foo { namespace Bar { template <class a, int b> class Test { }; #define MEMBERS(a) (sizeof(a)/sizeof(a[0])) static int bar[2]; static Test<int, ELEMENTS(bar)> foo; } // namespace Bar } // namespace Foo ----- CEDET marks "static Test<int, ELEMENTS(bar)>" part unmatched syntax. If I rewrite code so that #define MEMBERS(a) (sizeof(a)/sizeof(a[0])) => #define MEMBERS 2 and static Test<int, MEMBERS> foo; Both those lines are marked unmatched syntax. That doesn't change even though I wait more than semantic-idle-scheduler-idle-time but the markings are removed if I manually select Force Tag Refresh. I seem to be having automatic reparse problems in general because I have to be executing Force Tag Refresh pretty much all the time to make Semantic reparse my changes. How should this stuff work? I could debug it if you give me some pointers. Current CEDET from CVS, Emacs(W32) 23.0.91 on Windows. -- Hannu |