# Version 9.7.115.1441 produces not compilable units in C++Builder

**URL:** https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627
**Category:** Remoting SDK
**Tags:** cppbuilder
**Created:** [June 11, 2019, 4:09pm UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627 "2019-06-11T16:09:07Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![rgomezc](https://talk.remobjects.com/user_avatar/talk.remobjects.com/rgomezc/32/530_2.png) [@rgomezc](https://talk.remobjects.com/u/rgomezc)
#### Post date: [June 11, 2019, 4:09pm UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627/1 "2019-06-11T16:09:07Z")

</div>

Hello,

I’ve just installed version 9.7 on my environment and I find that I can’t compile my projects with it.  
The problem appears to be a change for the TROAsyncCallback type. Before (version 9.5 was the latest I had installed) it it was generated like this:

`typedef void __fastcall (__closure *TROAsyncCallback)(const _di_IROAsyncRequest aRequest);`

but now it is an abstract class/interface:

```
__interface TROAsyncCallback : public System::IInterface 
{
	virtual void __fastcall Invoke(const _di_IROAsyncRequest aRequest) = 0 ;
};

```

The problem is that the `_Intf` files include, for instance, this:

`virtual Uroasync::_di_IROAsyncRequest __fastcall BeginLoggedIn(const TROAsyncCallback aCallback, const void* aUserData = NULL) = 0;`

which can’t be compiled as now TROAsyncCallback is an abstract class, so it is not possible to create an instance.

I’m using RAD Studio 10.1 Berlin.

Thanks!

---

<div class="post-metadata">

### Author: ![EvgenyK](https://talk.remobjects.com/user_avatar/talk.remobjects.com/evgenyk/32/16_2.png) [@EvgenyK](https://talk.remobjects.com/u/EvgenyK)
#### Post date: [June 12, 2019, 9:29am UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627/2 "2019-06-12T09:29:50Z")

</div>

Hi,

weird, it wasn’t declared as abstract class or interface:

```auto
  {$IFDEF TROAsyncCallback_as_reqular_method}
  TROAsyncCallback = procedure (const aRequest: IROAsyncRequest) of object;
  {$ELSE}
  TROAsyncCallback = {$IFDEF DELPHI2009UP}reference to{$ENDIF} procedure (const aRequest: IROAsyncRequest);
  {$ENDIF}

```

workaround: try to uncomment `{.$DEFINE TROAsyncCallback_as_reqular_method}` in `RemObjects.inc`, rebuild packages and retest.

* * *

**Edit** : another workaround: manually change `TROAsyncCallback` with `_di_TROAsyncCallback` in `_Intf` file

---

<div class="post-metadata">

### Author: ![RemObjectsSoftware](https://talk.remobjects.com/user_avatar/talk.remobjects.com/remobjectssoftware/32/15947_2.png) [@RemObjectsSoftware](https://talk.remobjects.com/u/RemObjectsSoftware)
#### Post date: [June 12, 2019, 10:56am UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627/3 "2019-06-12T10:56:09Z")

</div>

Thanks, logged as [bugs://82773](https://www.remobjects.com/portal/bugs/?id=82773)

---

<div class="post-metadata">

### Author: ![RemObjectsSoftware](https://talk.remobjects.com/user_avatar/talk.remobjects.com/remobjectssoftware/32/15947_2.png) [@RemObjectsSoftware](https://talk.remobjects.com/u/RemObjectsSoftware)
#### Post date: [June 12, 2019, 11:06am UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627/4 "2019-06-12T11:06:19Z")

</div>

[bugs://82773](https://www.remobjects.com/portal/bugs/?id=82773) got closed with status fixed.

---

<div class="post-metadata">

### Author: ![rgomezc](https://talk.remobjects.com/user_avatar/talk.remobjects.com/rgomezc/32/530_2.png) [@rgomezc](https://talk.remobjects.com/u/rgomezc)
#### Post date: [June 12, 2019, 2:45pm UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627/5 "2019-06-12T14:45:50Z")

</div>

Ok, I will try ASAP. I had to revert to the previous version.

I see that the bug was already fixed. What was the fix? I’m guessing changing it to `_di_TROAsyncCallback`?

---

<div class="post-metadata">

### Author: ![EvgenyK](https://talk.remobjects.com/user_avatar/talk.remobjects.com/evgenyk/32/16_2.png) [@EvgenyK](https://talk.remobjects.com/u/EvgenyK)
#### Post date: [June 12, 2019, 2:47pm UTC](https://talk.remobjects.com/t/version-9-7-115-1441-produces-not-compilable-units-in-c-builder/19627/6 "2019-06-12T14:47:09Z")

</div>

Hi,

yes, codegen now generates \_Intf with `_di_TROAsyncCallback` for C++Builder.
