Re: [Firebird-devel] New Interface

2014-08-14 Thread Alex Peshkoff
On 08/14/14 13:50, Dimitry Sibiryakov wrote: > 14.08.2014 11:34, Alex Peshkoff wrote: >> I do not have access >> to that box myself, so I can't report what is actually that format. But >> an attempt to access it as we do on windows/linux cause an error. > Do you mean normal access like calling

Re: [Firebird-devel] New Interface

2014-08-14 Thread Tom Coleman
My 800 Firebird/Delphi systems contact just asked, "Any word on the Beta"? He needs SMP right now. I don't think he watches this list but he does watch http://tracker.firebirdsql.org/secure/Dashboard.jspa I asked him how many times he's watched the FB3 Beta release date slide since he's been

Re: [Firebird-devel] New Interface

2014-08-14 Thread Dimitry Sibiryakov
14.08.2014 16:04, Tony Whyman wrote: > I changed it to: Yes, I tried this workaround too. It works, but requirement to use cast on every assignment looks ugly: code generated for TMaster.getStatus() etc is the same, so every returning of interface will have to use such cast. > The program

Re: [Firebird-devel] New Interface

2014-08-14 Thread Tony Whyman
I was using the Alpha 2 source On 14/08/14 15:23, Adriano dos Santos Fernandes wrote: > On 14/08/2014 11:04, Tony Whyman wrote: >> master := IMaster(GetMaster()); >> >> The program now does complete without an error, but returns "15" as the >> version. My reading of the Firebird code is that the

Re: [Firebird-devel] New Interface

2014-08-14 Thread Adriano dos Santos Fernandes
On 14/08/2014 11:04, Tony Whyman wrote: > > master := IMaster(GetMaster()); > > The program now does complete without an error, but returns "15" as the > version. My reading of the Firebird code is that the correct result is > 4. So still something not right - probably the way the instance variabl

Re: [Firebird-devel] New Interface

2014-08-14 Thread Tony Whyman
Apologies, I should have read your bug report before replying as I didn't realise your problem was with the flat call to fb_get_master_interface. I just assumed that you would be getting a problem with the call to GetVersion. I have put your Pascal example into my test system and got an Access Vio

Re: [Firebird-devel] New Interface

2014-08-14 Thread Dimitry Sibiryakov
14.08.2014 14:08, Tony Whyman wrote: > I'm not quite sure what you think is wrong with this code (from the fpc > viewpoint): That code is fine. This isn't: callfb_get_master_interface movq-104(%rbp),%rax movq%rax,U_P$CREATE_MASTER As you can see, value returned

Re: [Firebird-devel] Using isc_dsql_prepare_m instead of isc_dsql_prepare

2014-08-14 Thread Jim Starkey
You are correct with regards to the present protocol. The network transmission layers must parse the BLR message formats, which is why message formats are declared up front. They do not, however, have to parse the most complex (and extensible) language semantics. The driving force for this de

Re: [Firebird-devel] New Interface

2014-08-14 Thread Tony Whyman
Just came across this on Wikipedia (hence needs to be checked) If this is how gcc ++ works then it is clear why there is a mis-match with fpc (instance variable in %rdi) and IMaster.GetVersion (instance variable expected on stack with caller cleanup). /thiscall/ // /This calling conventi

Re: [Firebird-devel] New Interface

2014-08-14 Thread Tony Whyman
I'm not quite sure what you think is wrong with this code (from the fpc viewpoint): # [31] WriteLn(master.getVersion()); callfpc_get_output movq%rax,%rbx movqU_P$CREATE_MASTER,%rdi movqU_P$CREATE_MASTER,%rax movq(%rax),%rax call*(%rax) movl%e

Re: [Firebird-devel] New Interface

2014-08-14 Thread Dimitry Sibiryakov
14.08.2014 13:40, Adriano dos Santos Fernandes wrote: > Isn't you that talked many times that a Delphi/FPC interface is > incompatible (more methods in the HEAD) with our ones, so why you keep > calling methods this way? How it's going to work? If you had read whole messages, not random pieces

Re: [Firebird-devel] New Interface

2014-08-14 Thread Adriano dos Santos Fernandes
On 14/08/2014 08:28, Dimitry Sibiryakov wrote: > 14.08.2014 11:34, Alex Peshkoff wrote: >> HP C/aC++ Version A.06.26 > > Alpha version?.. > > PS: The problem with FPC which started whole this topic seems to be a > compiler's bug which destroy value returning by external function. > Testcase is at

Re: [Firebird-devel] New Interface

2014-08-14 Thread Paul Reeves
On Thursday 14 August 2014 13:28:33 Dimitry Sibiryakov wrote: > 14.08.2014 11:34, Alex Peshkoff wrote: > > HP C/aC++ Version A.06.26 > >Alpha version?.. > More to the point - Itanium? An ARM-based test would be useful. Paul -- Paul Reeves http://www.ibphoenix.com Supporting users of Firebi

Re: [Firebird-devel] New Interface

2014-08-14 Thread Dimitry Sibiryakov
14.08.2014 11:34, Alex Peshkoff wrote: HP C/aC++ Version A.06.26 Alpha version?.. PS: The problem with FPC which started whole this topic seems to be a compiler's bug which destroy value returning by external function. Testcase is attached. I registered ticket in their bugtracker: http://b

Re: [Firebird-devel] New Interface

2014-08-14 Thread Dimitry Sibiryakov
14.08.2014 11:34, Alex Peshkoff wrote: > I do not have access > to that box myself, so I can't report what is actually that format. But > an attempt to access it as we do on windows/linux cause an error. Do you mean normal access like calling virtual function of PAC or your hackery with its r

Re: [Firebird-devel] New Interface

2014-08-14 Thread Alex Peshkoff
FYI - our colleagues from the Mission Control Center tested format of VMT in the following environment Intel(R) Itanium(R) Processor 9310 HP-UX B.11.31 HP C/aC++ Version A.06.26 and it differs from what we have on windows/linux. I do not have access to that box myself, so I can't report what is

Re: [Firebird-devel] Using isc_dsql_prepare_m instead of isc_dsql_prepare

2014-08-14 Thread Alex Peshkoff
On 08/14/14 03:41, Jim Starkey wrote: > The length is passed so the protocol handlers neither need to parse nor even > understand BLR. If every transmission layer had to understand BLR, extending > it would be next to impossible. At the moment when firebird forked from interbase BLR parser was