PR# 19442 [er] Crash with Non-object-call with assertions
Problem Report Summary
Submitter: axarosenberg
Category: Compiler
Priority: Low
Date: 2018/06/11
Class: Bug
Severity: Non-critical
Number: 19442
Release: 18.05
Confidential: No
Status: Analyzed
Responsible:
Environment: win
Synopsis: [er] Crash with Non-object-call with assertions
Description
When running this code compiled with 18.05.10.1818 with assertions turned on:
~~~~~~~~~~~~~~~~
class AA
create
make
feature
make
do
print ({BB}.f)
end
end
~~~~~~~~~~~~~~~~
class BB
feature
f: INTEGER
require
g
external
"C inline"
alias
"return (EIF_INTEGER)60;"
ensure
class_feature: class
end
g: BOOLEAN
do
Result := True
ensure
class_feature: class
end
end
~~~~~~~~~~~~~~~~
I get this exception trace:
-------------------------------------------------------------------------------
Class / Object Routine Nature of exception Effect
-------------------------------------------------------------------------------
AA f @1 Segmentation violation:
<0000023DFF569588> (From BB) Operating system signal. Fail
-------------------------------------------------------------------------------
AA f @1
<0000023DFF569588> (From BB) Precondition violated. Fail
-------------------------------------------------------------------------------
AA make @1
<0000023DFF569588> Routine failure. Fail
-------------------------------------------------------------------------------
AA root's creation
<0000023DFF569588> Routine failure. Exit
-------------------------------------------------------------------------------
--
Eric Bezault
To Reproduce
Problem Report Interactions
Yes, I have a similar test case for inherited assertions: https://github.com/gobo-eiffel/gobo/tree/master/library/tools/test/eiffel/validity/vuno3/test16 I did not send it to the initial bug report because I thought that if one is fixed, the other one would be fixed as well. -- Eric Bezault
We were able to reproduce in workbench mode, but not in finalized mode. We will let you know when it is fixed.