Denuva - CoolTips Errors



I tried adding CoolTips to my Multi-Dll system.
1) I added CoolTips Global Extension to my Data Dll that also contains CapeSoft WinEvent.
Getting Duplicate Errors on:


It compiled without any errors.

2) Compiling my Data Dll for the second time.
Getting 23 errors

typedef unsigned char byte;
Syntax error in #pragma command - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:2,1960
Declaration syntax error - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:25,23
typedef void far *    PDVI;
Syntax error, expected:  ; : [ ( { :: - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:25,9
Declaration syntax error - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:26,23
byte pascal CallDllGetVersion(byte (pascal *fpDllGetVersion)(PDVI), PDVI dvi);
Syntax error, expected:  <operator> . -> .* ->* [ ( ) , :: ... - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:28,74
byte pascal CallDllGetVersion(byte (pascal *fpDllGetVersion)(PDVI), PDVI dvi)
Syntax error, expected:  ; , ( [ <func-declarator> - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:30,13

and a lot more.

Anybody knows how to resolve these errors please.


Johan de Klerk


How did you download the files?
Did you git clone or grab the zip?

Could it be that the ttutillib.c file has the wrong kind of line endings which is causing Clarion to spit the dummy?

@rrogers maybe you need to add *.c text to the .gitattributes as well?


Thanks for the reply.

I downloaded the Zip file.
I compared my old C6 CoolTips version of ttutillib.c to the newly downloaded one with Beyond Compare and they are both the same.


I took the DLLTutor example ( and added the CoolTips Global Template to it.

  1. Compile: No Errors
  2. Compile again and got error: Illegal data type: TOOLTIPCLASS - C:\DLLTutorCoolTips\obj\release\Allfiles001.clw:14,21
  3. Closed C10
  4. Open and compile: Same error
  5. Closed C10
  6. Deleted all the generated CLW, MAP, LIB, OBJ, INC files
  7. Open and compile: No Error
  8. Compile again and got error: Illegal data type: TOOLTIPCLASS - C:\DLLTutorCoolTips\obj\release\Allfiles001.clw:14,21


I tried to upload the files but it says new users can’t upload files.


I bumped you to member, you should be ok to upload now.

Hopefully Randy can help out.

I just downloaded the zip and checked, the ttutillib.c is using CRLF line endings so my earlier guess is wrong.

Does it work for you on a non multi-dll app?


ttutillib.c is in the libsrc folder.
Did you try the example app?
email failing example to me and I can take a look,


Hi Brahn,
Thank you very much.

Hi Randy,
First of all, thanks for helping.
I can compile the Example app as many times as I like without any errors.
I have attached the Zip files I downloaded as well as the People Example app that I added CoolTips to.

This is what I found so far.

  1. Delete all the generated CLW, MAP, LIB, OBJ, INC, XML, EXP files.
  2. Compile AllFiles.App, no errors.
  3. Compile Updates.App, no errors.
  4. Compile Reports.App, no Errors.
  5. Compile DllTutor.App, no errors.
  6. Program run 100%.
  7. Do any Change to AllFiles,App and compile, Error: Illegal data type: TOOLTIPCLASS - C:\DLLTutorCoolTips\obj\release\Allfiles001.clw:14,21
  8. Delete all the generated AllFiles CLW, MAP, LIB, OBJ, INC, XML, EXP files.
  9. Compile AllFiles.App, no errors.
  10. Compile Updates.App, Error: Illegal data type: TOOLTIPCLASS - C:\DLLTutorCoolTips\obj\release\Updates001.clw:66,21 and 90 other errors.
  11. Delete all the generated Updates CLW, MAP, LIB, OBJ, INC, XML, EXP files.
  12. Compile Updates.App, no errors.

I hope is makes sense. (2.6 MB) (828.0 KB)



I also tested with the ClearType Example app

  1. Added the CoolTips Global Template
  2. Compile ClearType.App, no errors.
  3. Close C10.
  4. Compile ClearType.App, Error: Illegal data type: TOOLTIPCLASS - C:\Clarion10\Examples\ClearType\obj\release\ClearTypeTest001.clw:45,21
  5. Delete all the generated CLW, MAP, LIB, OBJ, INC, XML, EXP files
  6. Compile ClearType.App, no errors. (1.3 MB)


Hi Johan, Randy,

I think you’re getting these errors because you have conditional compilation turned on.
With no APPs or DCTs loaded - Clarion IDE main menu

Tools - Application Options - Generation tab and take the tick out of the Conditional Generation checkbox.



Hi Graham,
You were 100% correct.
Took of the Conditional Compile tick and I can compile the DllTutor and ClearText examples as many times as I like without any errors.
Thank you very much for the tip and help.

After all this time SV can still not get Conditional Compile to work properly.


Hi Randy,

I have added CoolTips Global Template my Multi-Dll Data Dll.
1) Compile
2) Getting Duplicate Errors on:
a) KEY_QUERY_VALUE - Label duplicated, second used: KEY_QUERY_VALUE - C:\Clarion10\Accessory\LibSrc\Win\WinEvent.Inc:693
b) CW_USEDEFAULT - Label duplicated, second used: CW_USEDEFAULT - C:\Clarion10\Accessory\LibSrc\Win\
3) Getting 13 Errors:
a) Syntax error in #pragma command C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:2,1960
b) typedef unsigned char byte;
Declaration syntax error - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:25,23
Syntax error, expected: ; : [ ( { :: C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:25,9
c) typedef void far * PDVI;
Declaration syntax error C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:26,23
Syntax error, expected: ; : [ ( { :: - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:26,9
d) byte pascal CallDllGetVersion(byte (pascal fpDllGetVersion)(PDVI), PDVI dvi);
Declaration syntax error - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:28,13
Syntax error, expected: . -> .
->* [ ( ) , :: … - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:28,74
Syntax error, expected: ; : [ ( { :: - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:28,6
Syntax error, expected: ; , ( [ - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:30,13
Syntax error, expected: . -> .* ->* [ ( ) , :: … - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:30,74
Syntax error, expected: ; : [ ( { :: - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:30,6
e) return((*fpDllGetVersion)(dvi));
Undeclared identifier ‘return’ - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:32,3
f) }
function ‘CallDllGetVersion’ does not return a value - C:\Clarion10\Accessory\LibSrc\Win\TTUTILLIB.C:33

One thing I did pickup it that the DllTutor AllFiles.App creates a “TTUTILLIB.obj” in my OBJ\Release folder when I compile it.
My Data Dll does not create the “TTUTILLIB.obj” at all.


Johan de Klerk


Hi Randy,

Update on my previous post.

If I remove CoolTips Global Template from my Data-Dll it compiles 100%.
I then added CoolTips Global Template to all my other Dll’s and my Exe, everything compiles 100%.
All my tips shows as Balloon tips.
Except for the procedures in my Data-Dll which is expected because I had to remove CoolTips from my Data-Dll to get it to compile.

Do you have any idea why it would not compile in my Data-Dll and why it would give me errors in my Data-Dll?


Johan de Klerk


Oh, I wonder if this is a mistake:

See how the commented out part on that line?



Hi Brahn,

Thanks for the reply.

I have changed it to:

Compiled and same 13 errors as above.


Johan de Klerk


Hi Randy,

Do you have any suggestions where I can check or something to fix this?


Johan de Klerk



Was anyone successful in adding Denuva CoolTips to your Multi-Dll applications, including in the Data-Dll?
It makes the ToolTips looks much better.


Johan de Klerk



Please ignore.

I have purchased XToolTips from Charles (ClarionProSeries - Lansrad).
Added, worked first time no problems.


Johan de Klerk