Board index » cppbuilder » improper generation of .pas "class function"

improper generation of .pas "class function"


2005-05-03 03:19:03 PM
cppbuilder11
qc.borland.com/wc/qcmain.aspx
I just bought BCB 6 Pro /SP4 and right from the start, ran into this bug.
Has anyone found a workaround for this?
Thanks
 
 

Re:improper generation of .pas "class function"

Hi,
Relaxin wrote:
Quote
qc.borland.com/wc/qcmain.aspx

I just bought BCB 6 Pro /SP4 and right from the start, ran into this bug.

Has anyone found a workaround for this?

Thanks


Can you add the inline(s) that pre-BCB6 code has?, i.e.
BCB5 db.hpp has a virtual inline calling a static method with a
TMetaClass param but this code is missing in BCB6:
//BCB5 code:
/* virtual class method */ virtual bool __fastcall IsBlob() { return
IsBlob(__classid(TBlobField)); }
#pragma option pop
/* class method */ static bool __fastcall IsBlob(TMetaClass* vmt);
//BCB6 code:
/* virtual class method */ virtual bool __fastcall IsBlob(TMetaClass* vmt);
--Craig
 

Re:improper generation of .pas "class function"

No, it just regenerates the header file and overwrites your changes.
This makes it unusable for some component packs.
ughhhhh!!! If it's not one thing it's another with Borland!!
"Craig Farrell" < XXXX@XXXXX.COM >wrote in message
Quote
Hi,

Relaxin wrote:
>qc.borland.com/wc/qcmain.aspx
>
>I just bought BCB 6 Pro /SP4 and right from the start, ran into this
bug.
>
>Has anyone found a workaround for this?
>
>Thanks
>
>

Can you add the inline(s) that pre-BCB6 code has?, i.e.

BCB5 db.hpp has a virtual inline calling a static method with a
TMetaClass param but this code is missing in BCB6:
//BCB5 code:
/* virtual class method */ virtual bool __fastcall IsBlob() { return
IsBlob(__classid(TBlobField)); }

#pragma option pop
/* class method */ static bool __fastcall IsBlob(TMetaClass* vmt);

//BCB6 code:
/* virtual class method */ virtual bool __fastcall IsBlob(TMetaClass*
vmt);

--Craig

 

{smallsort}

Re:improper generation of .pas "class function"

Hi,
Quote
No, it just regenerates the header file and overwrites your changes.

Do it once, remove the .pas from the project and add
back the dcc32-generated .obj in place of the .pas. Then
the .hpp will stop being regenerated.
Or you could change your calls, e.g.
if( Table1Graphic->IsBlob(__classid(TBlobField)) )
--Craig