Re: Compiling with void safe

Eric Bezault <[email protected]> Sat, 9 Jan 2016 09:50:28 +0100
Newsgroups gmane.comp.lang.eiffel.gobo.devel
Message-ID <[email protected]>
On 1/8/2016 23:54, Berend de Boer wrote:
> Hi All,
>
> I'm trying to convert a program to be void-safe. How do I enable that
> in system.xace?
>
> I've tried to set the option:
>
>   <option void_safety="complete"/>
>
> but doesn't appear to do anything.

Xace does not support void-safety yet.
I'll add it in the near future.
This task is not as easy as it seems, as you noticed below.

> I've also tried to grab a generated compile_ise.ecf and make that void
> safe by setting to conformance, and changing the libraries to the void
> safe versions, but that gives weird compilation errors like:
>
>   Error code: VDRD(2)
>
>   Type error: redeclaration has non-conforming signature.
>   What to do: make sure that redeclaration uses signature (number and
>     types of arguments and result) conforming to that of the original.
>
>   Class: UC_CHARACTER
>   Redefined feature: out: STRING_8 From: UC_CHARACTER
>   Precursor: out: STRING_8 From: ANY
>
> which doesn't make much sense to me, so perhaps an earlier error causing
> this.

I would assume that the version of `out' in ANY is considered
by the compiler as attached whereas the one in UC_CHARACTER is
considered as detachable. So I assume that you have a reference
to base-safe.ecf in your compile_ise.ecf, but this latter ECF file
does not specify the option 'is_attached_by_default'.

-- 
Eric Bezault
mailto:[email protected]
http://www.gobosoft.com

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140