Hi Emacs hacker, I try ebrowse recently and I find in some cases it doesn't parse the class members correctly. Here is an example (The source files are attached: MyBtnDlg.CPP and MyBtnDlg.h): It parses member of CAboutDlg incorrectly: ------------------------------------------------------------------------ ---- class CAboutDlg: <---------> AddButton <---------> AddToCell <---------> AddToCell <---------> BEGIN_MESSAGE_MAP <---------> BEGIN_MESSAGE_MAP <---------> CAboutDlg <---------> DECLARE_MESSAGE_MAP <---------> DelButton <---------> DelFromCell <---------> DoDataExchange <---------> HideAll <---------> OnActivate <---------> OnButton4 <---------> OnButtonExtShort <---------> OnButtonMinAll <---------> OnButtonShowAll <---------> OnButtonalignme <---------> OnButtonminme <---------> OnButtonshowalign <---------> OnButtonshowalign2 <---------> OnCHECKCellMode <---------> OnCHECKHideDeact <---------> OnCHECKPutty <---------> OnCreate <---------> OnDestroy <---------> OnHotKey <---------> OnLButtonDblClk <---------> OnLButtonDown <---------> OnLButtonUp <---------> OnMBtnDown <---------> OnMENUITEMAddButton <---------> OnMENUITEMAlignButtons <---------> OnMENUITEMAlignWin <---------> OnMENUITEMChangeName <---------> OnMENUITEMRemove <---------> OnMENUITEMShowBehind <---------> OnMenuitemAdjustWinPos <---------> OnMyButtonUp <---------> OnPaint <---------> OnQueryDragIcon <---------> OnRADIOAlignStyle1 <---------> OnRADIOAlignStyle2 <---------> OnRADIOAlignStyle3 <---------> OnRButtonDown <---------> OnSelchangeTABCell <---------> OnSelchangeTABList <---------> OnSize <---------> OnSysCommand <---------> OnTaskBarCreated <---------> OnTrayNotify <---------> PreTranslateMessage <---------> RegisterWindowMessage <---------> ShowAll class CDialog: ------------------------------------------------------------------------ ---- You can check the source file MyBtnDlg.cpp. Actually these member functions do not belong to class CAboutDlg. They belong to class CMyBtnDlg. It seem ebrowse is misled by a Windows MFC marco in CMyBtnDlg.cpp (in line 23): (it is a very general marco in MFC program) DECLARE_MESSAGE_MAP() }; It seem ebrowse is expecting a ";" after the ")". If I add a ';" here, then ebrowse can parse the file correctly. Or if I delete this line, ebrowse can parse the file corrrectly too. Shall we make some changes to let ebrowse may robust? Regards, Brian