1 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdoc.cpp ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdoc.cpp
2 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdoc.cpp Sat Apr 14 22:55:23 2001
3 +++ ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdoc.cpp Sun Apr 15 00:08:20 2001
5 " -[no]locals Report local items. Default is on.\n"
6 " -[no]macros Process macros. Default is off.\n"
7 " -mcf Obsolete, output the old multi column format.\n"
8 - " -[no]private Report private items. Default is on.\n"
9 + " -[no]private Report private items. Default is off.\n"
10 " -[no]protected Report protected items. Default is on.\n"
11 " -[no]public Report public items. Default is on.\n"
12 " -root <name> The alternate name for [ROOT].\n"
13 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdoclexer.cpp ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdoclexer.cpp
14 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdoclexer.cpp Sat Apr 14 22:55:23 2001
15 +++ ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdoclexer.cpp Sun Apr 15 00:08:20 2001
20 - if(*p>='0' || *p<='9')
21 + if(*p>='0' && *p<='9') // BUG: was ||
28 - if(*p>='0' || *p<='9')
29 + if(*p>='0' && *p<='9') // BUG: was ||
33 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocphase3.cpp ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocphase3.cpp
34 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocphase3.cpp Sat Apr 14 22:55:23 2001
35 +++ ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocphase3.cpp Sun Apr 15 00:08:20 2001
38 ::fprintf(fp,"%s",file);
40 - ::fprintf(fp,"\">",m_SourceURL.str(),file);
41 + ::fprintf(fp,"\">");
42 ::fprintf(fp,"%s",file);
47 {for(ulong i=0;i<nd->GetNumItems();i++) {
48 const char* d = nd->GetDataString(i);
50 + if(*d == ':' && *(d+1) != ':') { // BUG for nested name specfiers
51 // This class is derived. Report the derived relations.
53 while(i<nd->GetNumItems()) {
54 @@ -2221,21 +2221,30 @@
55 // TODO: generate the class xref given the class name.
56 ::fprintf(fp," <dt> extends ");
57 const char* scope = "private";
58 + const char* isvirtual = "";
59 + for(;beg<end;beg++) {
60 d = nd->GetDataString(beg);
61 if(!::strcmp(d,"public")) {
65 else if(!::strcmp(d,"protected")) {
69 + else if(!::strcmp(d,"private")) {
72 + else if(!::strcmp(d,"virtual")) {
78 {for(ulong j=beg;j<end;j++) {
81 WriteItemWithXref(ctf,fp,nd,j);
83 - ::fprintf(fp," as %s</dt>\n",scope);
84 + ::fprintf(fp," as %s %s</dt>\n",isvirtual,scope);
90 ::fprintf(fp,"<tr valign=top>\n");
91 if(mapnodes->GetNumItems()>1) {
92 - ::fprintf(fp,"<td align=right>",i);
93 + ::fprintf(fp,"<td align=right>");
94 ::fprintf(fp,"<font color=red>%d</font>",i);
97 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocphase3.h ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocphase3.h
98 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocphase3.h Sat Apr 14 22:55:23 2001
99 +++ ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocphase3.h Sun Apr 15 00:08:20 2001
105 const char* GetCurrTime();
106 const char* GetProgram();
108 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocprep.cpp ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocprep.cpp
109 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocprep.cpp Sat Apr 14 22:55:23 2001
110 +++ ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocprep.cpp Sun Apr 15 00:08:20 2001
112 m_GlobalDefsFlag.Append(b);
115 +static void CopyJustNewlines(FILE* ofp, char *buf) {
116 + for(char *p=buf; p != NULL && *p != '\0'; ++p)
118 + ::fprintf(ofp,"\n");
121 // ========================================================================
122 // Pre-process the specified file.
123 // ========================================================================
125 ::fprintf(ofp,"%s",linebuf);
128 - ::fprintf(ofp,"\n");
129 + CopyJustNewlines(ofp, linebuf);
134 ::fprintf(ofp,"%s",linebuf1);
137 - ::fprintf(ofp,"\n");
138 + CopyJustNewlines(ofp, linebuf1);
143 ::fprintf(ofp,"%s",linebuf1);
146 - ::fprintf(ofp,"\n");
147 + CopyJustNewlines(ofp, linebuf1);
152 ::fprintf(ofp,"%s",linebuf1);
155 - ::fprintf(ofp,"\n");
156 + CopyJustNewlines(ofp, linebuf1);
161 skipElse[level] = true;
162 skipEndif[level] = true;
164 - ::fprintf(ofp,"\n");
165 + CopyJustNewlines(ofp, linebuf1);
170 isSymDefinedFlag = IsSymDefined(symname);
171 skipElse[level] = false;
172 skipEndif[level] = false;
173 - ::fprintf(ofp,"\n");
174 + CopyJustNewlines(ofp, linebuf1);
178 @@ -257,13 +263,13 @@
179 // ================================================
180 if(!::strncmp(keyword,"else",4)) {
181 skipFlag = skipElse[level-1];
182 - ::fprintf(ofp,"\n");
183 + CopyJustNewlines(ofp, linebuf1);
186 if(!::strncmp(keyword,"endif",4)) {
188 skipFlag = skipEndif[level];
189 - ::fprintf(ofp,"\n");
190 + CopyJustNewlines(ofp, linebuf1);
195 ::fprintf(ofp,"%s",linebuf1);
198 - ::fprintf(ofp,"\n");
199 + CopyJustNewlines(ofp, linebuf1);
203 @@ -511,11 +517,13 @@
204 ch=GetNextChar(file,lineno);
209 for(ch=GetNextChar(file,lineno);
211 ch=GetNextChar(file,lineno));
218 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocprepexpr.cpp ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocprepexpr.cpp
219 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/src/ccdocprepexpr.cpp Sat Apr 14 22:55:23 2001
220 +++ ccdoc_v07a/ccdoc_dev/ccdoc/src/ccdocprepexpr.cpp Sun Apr 15 00:08:20 2001
221 @@ -207,10 +207,13 @@
226 - b1 = m_Left->Eval(obj,lineno,src,linebuf,debugFlag,level+1,flag);
227 + // apparently thay are in reverse order
229 b2 = m_Right->Eval(obj,lineno,src,linebuf,debugFlag,level+1,flag);
230 + if (!b2) { //short circuit boolean evaluation
232 + b1 = m_Left->Eval(obj,lineno,src,linebuf,debugFlag,level+1,flag);
237 @@ -219,10 +222,13 @@
242 - b1 = m_Left->Eval(obj,lineno,src,linebuf,debugFlag,level+1,flag);
243 + // apparently thay are in reverse order
245 b2 = m_Right->Eval(obj,lineno,src,linebuf,debugFlag,level+1,flag);
246 + if (b2) { //short circuit boolean evaluation
248 + b1 = m_Left->Eval(obj,lineno,src,linebuf,debugFlag,level+1,flag);
253 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/test/test012.ok ccdoc_v07a/ccdoc_dev/ccdoc/test/test012.ok
254 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/test/test012.ok Tue Jun 15 19:12:18 1999
255 +++ ccdoc_v07a/ccdoc_dev/ccdoc/test/test012.ok Sun Apr 15 00:08:20 2001
257 -../bin_MSWin32_dbg/ccdoc.exe -index test012.h
\r
258 +../bin_linux_opt/ccdoc.exe -index test012.h
\r
259 Loading 'ccdoc.ctf'
\r
260 Phase 1: 1 files specified
\r
261 CCDOC_PREP_DEBUG: Prep(test012.h,test012.h-PP)
\r
263 CCDOC_PREP_DEBUG: 4 ID T SOL
\r
264 CCDOC_PREP_DEBUG: 2 DEF
\r
265 CCDOC_PREP_DEBUG: 3 ID F HP
\r
266 -CCDOC_PREP_DEBUG: expr eval 4 ID 0
\r
267 -CCDOC_PREP_DEBUG: expr eval 3 DEF 0
\r
268 +CCDOC_PREP_DEBUG: expr eval 3 ID 0
\r
269 +CCDOC_PREP_DEBUG: expr eval 2 DEF 0
\r
270 CCDOC_PREP_DEBUG: expr eval 4 ID 1
\r
271 CCDOC_PREP_DEBUG: expr eval 3 DEF 1
\r
272 CCDOC_PREP_DEBUG: expr eval 2 OR 1
\r
273 -CCDOC_PREP_DEBUG: expr eval 3 ID 0
\r
274 -CCDOC_PREP_DEBUG: expr eval 2 DEF 0
\r
275 CCDOC_PREP_DEBUG: expr eval 1 OR 1
\r
276 CCDOC_PREP_DEBUG: expr eval 0 IF 1
\r
277 CCDOC_PREP_DEBUG: expr->Eval() == true
\r
278 @@ -108,10 +106,10 @@
279 CCDOC_PREP_DEBUG: 3 ID T TEST09_SPAM
\r
280 CCDOC_PREP_DEBUG: 2 DEF
\r
281 CCDOC_PREP_DEBUG: 3 ID F TEST09_FOO
\r
282 -CCDOC_PREP_DEBUG: expr eval 3 ID 1
\r
283 -CCDOC_PREP_DEBUG: expr eval 2 DEF 1
\r
284 CCDOC_PREP_DEBUG: expr eval 3 ID 0
\r
285 CCDOC_PREP_DEBUG: expr eval 2 DEF 0
\r
286 +CCDOC_PREP_DEBUG: expr eval 3 ID 1
\r
287 +CCDOC_PREP_DEBUG: expr eval 2 DEF 1
\r
288 CCDOC_PREP_DEBUG: expr eval 1 OR 1
\r
289 CCDOC_PREP_DEBUG: expr eval 0 IF 1
\r
290 CCDOC_PREP_DEBUG: expr->Eval() == true
\r
291 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/test/test031.ok ccdoc_v07a/ccdoc_dev/ccdoc/test/test031.ok
292 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/test/test031.ok Tue Jun 15 19:12:19 1999
293 +++ ccdoc_v07a/ccdoc_dev/ccdoc/test/test031.ok Sun Apr 15 00:08:20 2001
295 -../bin_MSWin32_dbg/ccdoc.exe -index test031.h
\r
296 +../bin_linux_opt/ccdoc.exe -index test031.h
\r
297 Loading 'ccdoc.ctf'
\r
298 Phase 1: 1 files specified
\r
299 CCDOC_PREP_DEBUG: Prep(test031.h,test031.h-PP)
\r
301 CCDOC_PREP_DEBUG: 3 ID F test031_E_macro
\r
302 CCDOC_PREP_DEBUG: 2 DEF
\r
303 CCDOC_PREP_DEBUG: 3 ID T test031_D_macro
\r
304 -CCDOC_PREP_DEBUG: expr eval 3 ID 0
\r
305 -CCDOC_PREP_DEBUG: expr eval 2 DEF 0
\r
306 CCDOC_PREP_DEBUG: expr eval 3 ID 30
\r
307 CCDOC_PREP_DEBUG: expr eval 2 DEF 30
\r
308 CCDOC_PREP_DEBUG: expr eval 1 OR 1
\r
310 CCDOC_PREP_DEBUG: 3 ID F test031_E_macro
\r
311 CCDOC_PREP_DEBUG: 2 DEF
\r
312 CCDOC_PREP_DEBUG: 3 ID T test031_B_macro
\r
313 -CCDOC_PREP_DEBUG: expr eval 3 ID 0
\r
314 -CCDOC_PREP_DEBUG: expr eval 2 DEF 0
\r
315 CCDOC_PREP_DEBUG: expr eval 3 ID 10
\r
316 CCDOC_PREP_DEBUG: expr eval 2 DEF 10
\r
317 CCDOC_PREP_DEBUG: expr eval 1 OR 1
\r
319 CCDOC_PREP_DEBUG: 2 ID F WINVER
\r
320 CCDOC_PREP_DEBUG: expr eval 2 INTX 1024
\r
321 CCDOC_PREP_DEBUG: ERROR
\r
323 +================================================
\r
324 +WARNING: Preprocessor macro 'WINVER' was not defined at line 21
\r
325 + in file test031.h.
\r
326 + line: #if (WINVER >= 0x400)
\r
328 +================================================
\r
329 CCDOC_PREP_DEBUG: expr eval 2 ID 0
\r
330 CCDOC_PREP_DEBUG: expr eval 1 GE 0
\r
331 CCDOC_PREP_DEBUG: expr eval 0 IF 0
\r
333 Updating xref ids ...
\r
334 Writing repository data to 'ccdoc.ctf' ...
\r
335 Completion status: 0 errors 1 warnings.
\r
337 -================================================
\r
338 -WARNING: Preprocessor macro 'WINVER' was not defined at line 21
\r
339 - in file test031.h.
\r
340 - line: #if (WINVER >= 0x400)
\r
342 -================================================
\r
343 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/ccdoc/test/test032.ok ccdoc_v07a/ccdoc_dev/ccdoc/test/test032.ok
344 --- ccdoc_v07a.dist/ccdoc_dev/ccdoc/test/test032.ok Tue Jun 15 19:12:19 1999
345 +++ ccdoc_v07a/ccdoc_dev/ccdoc/test/test032.ok Sun Apr 15 00:08:20 2001
347 -../bin_solaris_dbg/ccdoc.exe -index test032.h
\r
348 +../bin_linux_opt/ccdoc.exe -index test032.h
\r
349 Loading 'ccdoc.ctf'
\r
350 Phase 1: 1 files specified
\r
351 CCDOC_PREP_DEBUG: Prep(test032.h,test032.h-PP)
\r
353 d:0:$83 b:@author Foo
\r
354 r:cmd:loc:r0:1:2:8:1:$0 0:
\r
355 d:0:$84 d:@version spam
\r
356 -r:cls:loc:r0:1:3:8:3:$86 9:test032_A
\r
357 +r:cls:loc:r0:1:3:9:3:$86 9:test032_A
\r
359 d:1:$86 9:test032_A
\r
361 -r:pri:pri:r0:2:0:8:0:$0 0:
\r
362 +r:pri:pri:r0:2:0:9:0:$0 0:
\r
363 Phase 2: generating the cross reference data.
\r
364 Updating xref ids ...
\r
365 Writing repository data to 'ccdoc.ctf' ...
\r
366 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlhashtable.h ccdoc_v07a/ccdoc_dev/libjdl/src/jdlhashtable.h
367 --- ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlhashtable.h Sat Apr 14 22:55:24 2001
368 +++ ccdoc_v07a/ccdoc_dev/libjdl/src/jdlhashtable.h Sun Apr 15 00:08:20 2001
374 + virtual ~CJdlHashTable();
376 * Resize the hash table.
377 * This is a very costly operation because each entry has to
378 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlrbtreenode.cpp ccdoc_v07a/ccdoc_dev/libjdl/src/jdlrbtreenode.cpp
379 --- ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlrbtreenode.cpp Sat Apr 14 22:55:23 2001
380 +++ ccdoc_v07a/ccdoc_dev/libjdl/src/jdlrbtreenode.cpp Sun Apr 15 00:08:20 2001
381 @@ -552,11 +552,11 @@
382 ::printf("%s %s",(const char*)m_Key,(IsRed()?"RED":"BLACK"));
385 - ::printf(" LEFT:",(const char*)m_Left->m_Key);
386 + ::printf(" LEFT:%s",(const char*)m_Left->m_Key);
390 - ::printf(" RIGHT:",(const char*)m_Right->m_Key);
391 + ::printf(" RIGHT:%s",(const char*)m_Right->m_Key);
393 ::printf(" RIGHT: ");
396 // Property 1. all nodes must be red or black.
397 for(nd=GetMinimum();nd!=0;nd = nd->GetSuccessor()) {
398 if(nd->m_Color != RED && nd->m_Color != BLACK) {
399 - ::printf("%sERROR: Node '%s' is not RED or BLACK.\n",(const char*)nd->m_Key);
400 + ::printf("%sERROR: Node '%s' is not RED or BLACK.\n",prefix,(const char*)nd->m_Key);
404 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlsorter.h ccdoc_v07a/ccdoc_dev/libjdl/src/jdlsorter.h
405 --- ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlsorter.h Sat Apr 14 22:55:24 2001
406 +++ ccdoc_v07a/ccdoc_dev/libjdl/src/jdlsorter.h Sun Apr 15 00:08:20 2001
407 @@ -105,12 +105,12 @@
408 // ========================================================================
409 template <class List,class Item>
410 CJdlSorter<List,Item>::CJdlSorter(List& list,int sizeofList)
411 - : m_List(list), m_Size(sizeofList)
412 + : m_Size(sizeofList), m_List(list)
415 template <class List,class Item>
416 CJdlSorter<List,Item>::CJdlSorter(const CJdlSorter<List,Item>& x)
417 - : m_List(x.m_List), m_Size(x.m_Size)
418 + : m_Size(x.m_Size), m_List(x.m_List)
421 template <class List,class Item>
422 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlstring.cpp ccdoc_v07a/ccdoc_dev/libjdl/src/jdlstring.cpp
423 --- ccdoc_v07a.dist/ccdoc_dev/libjdl/src/jdlstring.cpp Sat Apr 14 22:55:23 2001
424 +++ ccdoc_v07a/ccdoc_dev/libjdl/src/jdlstring.cpp Sun Apr 15 00:08:20 2001
428 // It's a large string, allocate space for it.
429 - const int alignmentFactor = 8; // align on an 8 byte boundary
430 + const uint alignmentFactor = 8; // align on an 8 byte boundary
432 if(new_maxlen != m_Size || !m_String || m_String == m_Internal) {
433 // Allocate the new buffer on a boundary.
434 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/libjdl/test/suffix.mk ccdoc_v07a/ccdoc_dev/libjdl/test/suffix.mk
435 --- ccdoc_v07a.dist/ccdoc_dev/libjdl/test/suffix.mk Tue Jun 15 19:12:16 1999
436 +++ ccdoc_v07a/ccdoc_dev/libjdl/test/suffix.mk Sun Apr 15 00:12:29 2001
440 test: all test_dbg test_opt
\r
442 test_dbg: $(DBGTARGET)
\r
443 diff -urb -x *.[o~] -x *.exe -x *-PP ccdoc_v07a.dist/ccdoc_dev/tools/mkmk.pl ccdoc_v07a/ccdoc_dev/tools/mkmk.pl
444 --- ccdoc_v07a.dist/ccdoc_dev/tools/mkmk.pl Sat Apr 14 22:55:23 2001
445 +++ ccdoc_v07a/ccdoc_dev/tools/mkmk.pl Sun Apr 15 00:08:20 2001
450 + if( $arch eq "linux" ) {
451 + print MK "CPP = gcc\n";
452 + print MK "CPPFLAGS1 = \n";
455 print MK "CPP = CC\n";
456 print MK "CPPFLAGS1 = -pto -pta +w\n";
458 print MK "CPPFLAGS2 = -DJDL_DEFINE_LOCAL_TYPES -DJDL_DEFINE_LOCAL_BOOLEAN\n";
459 print MK "CPPFLAGS3 = -I. -I../..\n";
460 print MK "CPPFLAGS4 = \$(MYCPPFLAGS)\n";