#1 2012-08-10 16:16:40

RobinP
Member
Registered: 2012-08-10
Posts: 2

Use with C++ Builder XE

Hi,

I am interested in using the PDF Engine in C++ Builder (no Delphi installed), is this possible? 

I tried to build a simple project using the following files:
  SQLite3Pages.pas
  SynCommons.pas
  SynLZ.pas
  Synopse.inc
  SynPDF.pas

but I get the following error many times:
[DCC Error] SynCommons.pas(1799): E1025 Unsupported language feature: 'Object'

Regards,
Robin

Offline

#2 2012-08-10 16:44:34

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,659
Website

Re: Use with C++ Builder XE

I never used C++ Builder but I think it won't be feasible as it is.

Perhaps someone else is able to help you here.

Offline

#3 2012-08-17 16:22:35

RobinP
Member
Registered: 2012-08-10
Posts: 2

Re: Use with C++ Builder XE

Well it looks like the problem is due to the use of the 'object' type in the Delphi code, which seems to have been long since deprecated.  Would it be possible to modify the code to use classes instead?  I would certainly be willing to help with testing in C++ if you do this.
I noticed somebody had a similar problem with Big Table (http://synopse.info/forum/viewtopic.php?id=437), so I'm not the only one looking to use Synopse code in C++.
Regards,
Robin

Offline

#4 2012-08-18 06:36:33

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,659
Website

Re: Use with C++ Builder XE

Sometimes, "object" can be replaced by "record".
But when you need inheritance (like with TDynArray), "record" won't work.

It is a pity that "object" is so buggy.
Even if deprecated, it should be at least working for compatibility reasons.
See http://blog.synopse.info/post/2010/08/0 … egemony%21

I do not want to use Turbo Pascal inheritance and buggy virtual methods.
But for value-objects (like record), having inheritance at hand is very handy.
Embarcadero makes choices following the C# model (their new "record" model follows the "struct" C# implementation), and forget about the strength of object pascal.

So for your problem, we may change the implementation into classes, but it could be time consuming.
And I suspect it won't be even feasible, e.g. when used within dynamic arrays or other record structures.

Offline

Board footer

Powered by FluxBB