NO

Author Topic: tag file with duplicate procedure names  (Read 4502 times)

Offline John Z

  • Member
  • *
  • Posts: 860
tag file with duplicate procedure names
« on: May 19, 2021, 03:17:18 PM »
Several times I've seen my right side Source file window show doubled procedure names.  Everything else still works clean, compile, build, etc when this happens.  Deleting the TAG fie which is then rebuilt when the project is opened 'fixes' it.  I've looked into the 'bad' TAG file that was showing the doubling and there were duplicate entries.

So I'm concerned that I'm doing something wrong somewhere, but I've not been able to duplicate the issue at will.

Pelles 10.00.6 and Windows 10, build 19042.985  (just in case, but I don't think so....)

Any suggestions?

Thanks,

John Z

Grincheux

  • Guest
Re: tag file with duplicate procedure names
« Reply #1 on: May 19, 2021, 03:19:36 PM »
Never met this problem. Sorry

Offline John Z

  • Member
  • *
  • Posts: 860
Re: tag file with duplicate procedure names
« Reply #2 on: May 20, 2021, 12:49:55 PM »
Thanks,

BTW - it only seems to happen when creating a DLL.  In case anybody else has seen this.
It happened again today while finalizing the Add-In code but I kept working and later it was back to normal.

I'm attaching a tag file that I saved showing the issue in case it can help someone interested.  The file is binary but there are readable text names.

John Z

Grincheux

  • Guest
Re: tag file with duplicate procedure names
« Reply #3 on: May 20, 2021, 01:43:46 PM »
Quote
rowid   Kind   Name   Tag   Filename   Lineno   Text   Extra
1   10   WIN32_LEAN_AND_MEAN      line_count.c   13      0
2   10   UNICODE      line_count.c   14      0
3   10   _UNICODE      line_count.c   15      0
4   10   NELEMS      line_count.c   24      0
5   10   MAX_LINE_LENGTH      line_count.c   25      0
6   10   ID_LineCount      line_count.c   28      0
7   10   IsC      line_count.c   29      0
8   10   IsAsm      line_count.c   30      0
9   3   g_hwndMain      line_count.c   34   static HWND g_hwndMain   0
10   3   Lines      line_count.c   35   ldata Lines   0
11   4   lpReserved      line_count.c   55   LPVOID lpReserved   0
12   4   dwReason      line_count.c   55   DWORD dwReason   0
13   4   hDLL      line_count.c   55   HANDLE hDLL   0
14   1   DllMain      line_count.c   55   BOOL DllMain ( HANDLE hDLL , DWORD dwReason , LPVOID lpReserved )   0
15   12   UNREFERENCED_PARAMETER      line_count.c   56      0
16   4   eEvent      line_count.c   84   ADDIN_EVENT eEvent   0
17   4   hwnd      line_count.c   84   HWND hwnd   0
18   1   AddInMain      line_count.c   84   BOOL AddInMain ( HWND hwnd , ADDIN_EVENT eEvent )   0
19   4   AddCmd      line_count.c   90   ADDIN_ADD_COMMAND AddCmd   0
20   4   szText      line_count.c   91   WCHAR szText [ ]   0
21   12   LoadString      line_count.c   96      0
22   12   NELEMS      line_count.c   96      0
23   12   LoadImage      line_count.c   101      0
24   12   MAKEINTRESOURCE      line_count.c   101      0
25   12   AddIn_AddCommand      line_count.c   104      0
26   12   AddIn_RemoveCommand      line_count.c   111      0
27   4   pcvData      line_count.c   128   LPCVOID pcvData   0
28   4   idCmd      line_count.c   128   int idCmd   0
29   1   AddInCommandEx      line_count.c   128   void AddInCommandEx ( int idCmd , LPCVOID pcvData )   0
30   12   UNREFERENCED_PARAMETER      line_count.c   129      0
31   4   RetVal      line_count.c   130   BOOL RetVal   0
32   4   ftype      line_count.c   131   int ftype   0
33   4   pcsz      line_count.c   132   PCWSTR pcsz   0
34   12   memset      line_count.c   134      0
35   4   hwndDoc      line_count.c   139   HWND hwndDoc   0
36   12   AddIn_GetActiveDocument      line_count.c   139      0
37   12   IsWindow      line_count.c   140      0
38   4   docinfo      line_count.c   142   ADDIN_DOCUMENT_INFO docinfo   0
39   4   hwndDoc2      line_count.c   144   HWND hwndDoc2   0
40   12   AddIn_GetActiveDocument      line_count.c   144      0
41   12   AddIn_GetDocumentInfo      line_count.c   145      0
42   12   wcsrchr      line_count.c   148      0
43   12   _wcsistr      line_count.c   150      0
44   12   MessageBoxA      line_count.c   152      0
45   4   Range      line_count.c   155   ADDIN_RANGE Range   0
46   4   iFirstLine      line_count.c   156   int iFirstLine   0
47   4   iLastLine      line_count.c   157   int iLastLine   0
48   4   l2      line_count.c   157   int l2   0
49   12   AddIn_GetSourceSel      line_count.c   160      0
50   12   AddIn_SourceLineFromChar      line_count.c   162      0
51   12   AddIn_SourceLineFromChar      line_count.c   163      0
52   12   AddIn_GetSourceLineCount      line_count.c   170      0
53   12   Parse_ASM      line_count.c   175      0
54   12   Parse_C      line_count.c   177      0
55   12   OutputFileInfo      line_count.c   181      0
56   4   l2      line_count.c   198   int l2   0
57   4   iLastLine      line_count.c   198   int iLastLine   0
58   4   iFirstLine      line_count.c   198   int iFirstLine   0
59   1   Parse_C      line_count.c   198   BOOL Parse_C ( int iFirstLine , int iLastLine , int l2 )   0
60   4   p_start      line_count.c   200   WCHAR * p_start   0
61   4   pchLine      line_count.c   201   WCHAR * pchLine   0
62   4   OpenCmnt      line_count.c   202   BOOL OpenCmnt   0
63   4   LineCont      line_count.c   203   BOOL LineCont   0
64   4   cchLine      line_count.c   204   unsigned int cchLine   0
65   4   iLine      line_count.c   205   int iLine   0
66   12   memset      line_count.c   207      0
67   4   hwndDoc      line_count.c   211   HWND hwndDoc   0
68   12   AddIn_GetActiveDocument      line_count.c   211      0
69   12   IsWindow      line_count.c   212      0
70   12   malloc      line_count.c   215      0
71   12   AddIn_GetSourceLineLength      line_count.c   223      0
72   12   memset      line_count.c   227      0
73   12   AddIn_GetSourceLine      line_count.c   229      0
74   12   Leading_WTrim      line_count.c   231      0
75   12   wcsstr      line_count.c   235      0
76   12   wcsstr      line_count.c   241      0
77   12   wcsstr      line_count.c   247      0
78   12   wcsstr      line_count.c   249      0
79   12   wcsstr      line_count.c   258      0
80   12   Trailing_WTrim      line_count.c   260      0
81   12   wcslen      line_count.c   261      0
82   12   wcsstr      line_count.c   269      0
83   12   Trailing_WTrim      line_count.c   271      0
84   12   wcslen      line_count.c   272      0
85   12   wcsstr      line_count.c   279      0
86   12   wcsstr      line_count.c   280      0
87   12   wcsstr      line_count.c   284      0
88   12   wcsstr      line_count.c   285      0
89   12   wcslen      line_count.c   296      0
90   12   CheckForContinue      line_count.c   304      0
91   12   free      line_count.c   313      0
92   12   MessageBoxA      line_count.c   317      0
93   4   l2      line_count.c   333   int l2   0
94   4   iLastLine      line_count.c   333   int iLastLine   0
95   4   iFirstLine      line_count.c   333   int iFirstLine   0
96   1   Parse_ASM      line_count.c   333   BOOL Parse_ASM ( int iFirstLine , int iLastLine , int l2 )   0
97   4   p_start      line_count.c   335   WCHAR * p_start   0
98   4   pchLine      line_count.c   336   WCHAR * pchLine   0
99   4   inData      line_count.c   337   static int inData   0
100   4   inCode      line_count.c   338   static int inCode   0
101   4   inBSS      line_count.c   339   static int inBSS   0
102   4   Seg_Type      line_count.c   340   int Seg_Type   0
103   4   cchLine      line_count.c   341   unsigned int cchLine   0
104   4   iLine      line_count.c   342   int iLine   0
105   12   memset      line_count.c   344      0
106   4   hwndDoc      line_count.c   346   HWND hwndDoc   0
107   12   AddIn_GetActiveDocument      line_count.c   346      0
108   12   IsWindow      line_count.c   347      0
109   12   malloc      line_count.c   350      0
110   12   AddIn_GetSourceLineLength      line_count.c   358      0
111   12   memset      line_count.c   362      0
112   12   AddIn_GetSourceLine      line_count.c   364      0
113   12   Leading_WTrim      line_count.c   366      0
114   12   _wcsistr      line_count.c   368      0
115   12   _wcsistr      line_count.c   376      0
116   12   _wcsistr      line_count.c   384      0
117   12   wcsstr      line_count.c   391      0
118   12   wcsstr      line_count.c   398      0
119   12   Trailing_WTrim      line_count.c   400      0
120   12   wcschr      line_count.c   402      0
121   12   wcslen      line_count.c   402      0
122   12   wcslen      line_count.c   410      0
123   12   free      line_count.c   434      0
124   12   MessageBoxA      line_count.c   438      0
125   4   p_in      line_count.c   452   wchar_t * p_in   0
126   1   Leading_WTrim      line_count.c   452   wchar_t * Leading_WTrim ( wchar_t * p_in )   0
127   12   iswspace      line_count.c   455      0
128   4   p_in      line_count.c   469   wchar_t * p_in   0
129   1   Trailing_WTrim      line_count.c   469   wchar_t * Trailing_WTrim ( wchar_t * p_in )   0
130   4   p_end      line_count.c   470   wchar_t * p_end   0
131   12   wcslen      line_count.c   473      0
132   12   isblank      line_count.c   474      0
133   12   memset      line_count.c   475      0
134   4   p_in      line_count.c   491   wchar_t * p_in   0
135   1   CheckForContinue      line_count.c   491   BOOL CheckForContinue ( wchar_t * p_in )   0
136   4   p_po      line_count.c   492   wchar_t * p_po   0
137   12   _wcsrichr      line_count.c   494      0
138   12   wcslen      line_count.c   496      0
139   12   _wcsrichr      line_count.c   500      0
140   12   wcslen      line_count.c   502      0
141   4   hwnd      line_count.c   519   HWND hwnd   0
142   1   OutputFileInfo      line_count.c   519   static void OutputFileInfo ( HWND hwnd )   0
143   4   achBuf      line_count.c   520   WCHAR achBuf [ ]   0
144   4   docinfo      line_count.c   521   ADDIN_DOCUMENT_INFO docinfo   0
145   4   hwndDoc      line_count.c   522   HWND hwndDoc   0
146   12   AddIn_GetActiveDocument      line_count.c   522      0
147   4   RetVal      line_count.c   525   BOOL RetVal   0
148   12   AddIn_GetDocumentInfo      line_count.c   525      0
149   12   swprintf      line_count.c   527      0
150   12   AddIn_WriteOutput      line_count.c   528      0
151   12   swprintf      line_count.c   530      0
152   12   AddIn_WriteOutput      line_count.c   531      0
153   12   swprintf      line_count.c   532      0
154   12   AddIn_WriteOutput      line_count.c   533      0
155   12   swprintf      line_count.c   535      0
156   12   AddIn_WriteOutput      line_count.c   536      0
157   12   swprintf      line_count.c   539      0
158   12   AddIn_WriteOutput      line_count.c   540      0
159   12   swprintf      line_count.c   543      0
160   12   AddIn_WriteOutput      line_count.c   544      0
161   12   swprintf      line_count.c   547      0
162   12   AddIn_WriteOutput      line_count.c   548      0
163   12   swprintf      line_count.c   551      0
164   12   AddIn_WriteOutput      line_count.c   552      0
165   12   swprintf      line_count.c   555      0
166   12   AddIn_WriteOutput      line_count.c   556      0
167   12   swprintf      line_count.c   559      0
168   12   AddIn_WriteOutput      line_count.c   560      0
169   12   swprintf      line_count.c   563      0
170   12   AddIn_WriteOutput      line_count.c   564      0
171   12   swprintf      line_count.c   567      0
172   12   AddIn_WriteOutput      line_count.c   568      0
173   10   IDR_ICON1      linecount.h   3      0
174   10   IDS_MENUTEXT      linecount.h   4      0
175   7   label   ldata   linecount.h   20   int label   0
176   7   bss   ldata   linecount.h   19   int bss   0
177   7   data   ldata   linecount.h   18   int data   0
178   7   longline   ldata   linecount.h   17   int longline   0
179   7   code   ldata   linecount.h   16   int code   0
180   7   comment   ldata   linecount.h   15   int comment   0
181   7   freeClose   ldata   linecount.h   14   int freeClose   0
182   7   freeOpen   ldata   linecount.h   13   int freeOpen   0
183   7   continues   ldata   linecount.h   12   int continues   0
184   7   blank   ldata   linecount.h   11   int blank   0
185   7   total   ldata   linecount.h   10   int total   0
186   7   end   ldata   linecount.h   9   int end   0
187   7   start   ldata   linecount.h   8   int start   0
188   5   ldata   ldata   linecount.h   7      0
189   11   ldata   ldata   linecount.h   21   struct ldata ldata   0
190   10   IDR_ICON1      trimtail.h   3      0
191   10   IDS_MENUTEXT      trimtail.h   4      0
192   7   code   ldata   trimtail.h   13   int code   0
193   7   comment   ldata   trimtail.h   12   int comment   0
194   7   freeClose   ldata   trimtail.h   11   int freeClose   0
195   7   freeOpen   ldata   trimtail.h   10   int freeOpen   0
196   7   blank   ldata   trimtail.h   9   int blank   0
197   7   total   ldata   trimtail.h   8   int total   0
198   5   ldata   ldata   trimtail.h   7      0
199   11   ldata   ldata   trimtail.h   14   struct ldata ldata   0

Open the file with an SQLite Editor : http://www.sqliteexpert.com/download.html

It is only for the source file.
« Last Edit: May 20, 2021, 01:45:29 PM by Grincheux »

Offline John Z

  • Member
  • *
  • Posts: 860
Re: tag file with duplicate procedure names
« Reply #4 on: May 20, 2021, 04:11:10 PM »
Wow - thanks for that tip.  I did not know it was SQLite - interesting.

John Z

Offline John Z

  • Member
  • *
  • Posts: 860
Re: tag file with duplicate procedure names
« Reply #5 on: May 22, 2021, 06:09:26 PM »
Looks like it somehow has to do with changing a procedures parameters.  Attached are two screen shots.
In the dup_procs.jpg you will see the same procedure with two different parameters.  The correct one i.e. the current one is FileInfo( wchar_t *pvData) it was changed from FileInfo( LPVOID pvData) .

The also interesting thing is that procedures that were not change are also duplicated.
I still don't have a step-by-step to reproduce though  :(

John Z

Grincheux

  • Guest
Re: tag file with duplicate procedure names
« Reply #6 on: May 22, 2021, 06:51:01 PM »
This week I had a problem with the project editor that was draw wrong, but not this one.
If it is a problem of Pelle IDE many other must have it.
Have you tried to clear the project or to remove manually the *.tag and *.ppx of your project?
And destroy the "output" folder?
I think Yes, but...
Re-install the compiler.
Very strange

Offline John Z

  • Member
  • *
  • Posts: 860
Re: tag file with duplicate procedure names
« Reply #7 on: May 22, 2021, 09:43:09 PM »
I just close Pelles, rename the project .tag file and restart. All good after that.


John Z