Debugger skipping assertions

View: New views
4 Messages — Rating Filter:   Alert me  

Debugger skipping assertions

by Jimmy J. Johnson :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I can not understand why assertions are not being checked in my
project.  I think I have all assertions for my code on and supplier
precondition set.  Below is the verson amd ecf.

jjj

Installation information:
Version = EiffelStudio 6 (6.2.7.2437 GPL Edition - windows)
$ISE_EIFFEL = C:\Program Files\Eiffel Software\EiffelStudio 6.2 GPL
$ISE_LIBRARY = C:\Program Files\Eiffel Software\EiffelStudio 6.2 GPL
$ISE_PLATFORM = windows
$ISE_C_COMPILER = msc


<?xml version="1.0" encoding="ISO-8859-1"?>
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-3-
0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration
-1-3-0 http://www.eiffel.com/developers/xml/configuration-1-3-0.xsd"
name="graph_tester" uuid="B9151236-025A-4CE9-956A-3F3CBF766529">
        <target name="graph_tester">
                <root class="APPLICATION" feature="make"/>
                <option warning="true">
                        <assertions precondition="true"
postcondition="true" check="true" invariant="true" loop="true"
supplier_precondition="true"/>
                        <warning name="export_class_missing"
enabled="false"/>
                        <warning name="old_verbatim_strings"
enabled="false"/>
                        <warning name="syntax" enabled="false"/>
                        <warning name="vjrv" enabled="false"/>
                </option>
                <external_include location="$(ISE_EIFFEL)
\library\vision2\spec\include"/>
                <external_include location="$(ISE_EIFFEL)
\library\wel\spec\windows\include"/>
                <external_include location="$(ISE_EIFFEL)
\C_library\zlib"/>
                <external_object location="$(ISE_EIFFEL)
\library\wel\spec\$(ISE_C_COMPILER)\lib\wel.lib"/>
                <external_object location="$(ISE_EIFFEL)
\library\vision2\spec\$(ISE_C_COMPILER)\lib\vision2.lib"/>
                <external_object location="$(ISE_EIFFEL)
\library\vision2\spec\$(ISE_C_COMPILER)\lib\zlib.lib"/>
                <external_object location="$(ISE_EIFFEL)
\library\vision2\spec\$(ISE_C_COMPILER)\lib\libpng.lib"/>
                <precompile name="precompile"
location="$ISE_PRECOMP\vision2.ecf"/>
                <library name="base"
location="$ISE_LIBRARY\library\base\base.ecf"/>
                <library name="vision2"
location="$ISE_LIBRARY\library\vision2\vision2.ecf"/>
                <cluster name="graphs_new"
location="C:\e_Source\graphs_new\" recursive="true"/>
                <cluster name="jjj_support"
location="C:\e_Source\jjj_support\" recursive="true"/>
        </target>
</system>



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/eiffel_software/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/eiffel_software/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:eiffel_software-digest@...
    mailto:eiffel_software-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    eiffel_software-unsubscribe@...

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/


Re: Debugger skipping assertions

by Colin LeMahieu :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Are your assertions within other contracts?  Contracts don't get
checked nested-ly.

--- In eiffel_software@..., "Jimmy J. Johnson"
<boxer41a@...> wrote:

>
> I can not understand why assertions are not being checked in my
> project.  I think I have all assertions for my code on and supplier
> precondition set.  Below is the verson amd ecf.
>
> jjj
>
> Installation information:
> Version = EiffelStudio 6 (6.2.7.2437 GPL Edition - windows)
> $ISE_EIFFEL = C:\Program Files\Eiffel Software\EiffelStudio 6.2 GPL
> $ISE_LIBRARY = C:\Program Files\Eiffel Software\EiffelStudio 6.2 GPL
> $ISE_PLATFORM = windows
> $ISE_C_COMPILER = msc
>
>
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <system xmlns="http://www.eiffel.com/developers/xml/configuration-1-3-
> 0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration
> -1-3-0 http://www.eiffel.com/developers/xml/configuration-1-3-0.xsd"
> name="graph_tester" uuid="B9151236-025A-4CE9-956A-3F3CBF766529">
> <target name="graph_tester">
> <root class="APPLICATION" feature="make"/>
> <option warning="true">
> <assertions precondition="true"
> postcondition="true" check="true" invariant="true" loop="true"
> supplier_precondition="true"/>
> <warning name="export_class_missing"
> enabled="false"/>
> <warning name="old_verbatim_strings"
> enabled="false"/>
> <warning name="syntax" enabled="false"/>
> <warning name="vjrv" enabled="false"/>
> </option>
> <external_include location="$(ISE_EIFFEL)
> \library\vision2\spec\include"/>
> <external_include location="$(ISE_EIFFEL)
> \library\wel\spec\windows\include"/>
> <external_include location="$(ISE_EIFFEL)
> \C_library\zlib"/>
> <external_object location="$(ISE_EIFFEL)
> \library\wel\spec\$(ISE_C_COMPILER)\lib\wel.lib"/>
> <external_object location="$(ISE_EIFFEL)
> \library\vision2\spec\$(ISE_C_COMPILER)\lib\vision2.lib"/>
> <external_object location="$(ISE_EIFFEL)
> \library\vision2\spec\$(ISE_C_COMPILER)\lib\zlib.lib"/>
> <external_object location="$(ISE_EIFFEL)
> \library\vision2\spec\$(ISE_C_COMPILER)\lib\libpng.lib"/>
> <precompile name="precompile"
> location="$ISE_PRECOMP\vision2.ecf"/>
> <library name="base"
> location="$ISE_LIBRARY\library\base\base.ecf"/>
> <library name="vision2"
> location="$ISE_LIBRARY\library\vision2\vision2.ecf"/>
> <cluster name="graphs_new"
> location="C:\e_Source\graphs_new\" recursive="true"/>
> <cluster name="jjj_support"
> location="C:\e_Source\jjj_support\" recursive="true"/>
> </target>
> </system>
>



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/eiffel_software/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/eiffel_software/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:eiffel_software-digest@...
    mailto:eiffel_software-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    eiffel_software-unsubscribe@...

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/


Re: Re: Debugger skipping assertions

by Peter Horan :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Quoting colinlema <clemahieu@...>:

> Are your assertions within other contracts?  Contracts don't get
> checked nested-ly.

This is the likely reason.

But, just in case, I have fallen into the trap of writing narrower  
preconditions, which are masked by the condition inherited.
--
Peter Horan                     Faculty of Science and Technology
peter@...             Deakin University
+61-4-0831 2116 (Voice)         Geelong, Victoria 3217, AUSTRALIA
+61-3-5227 2028 (FAX)           http://www.eit.deakin.edu.au/~peter

-- The Eiffel guarantee: From specification to implementation
-- (http://www.cetus-links.org/oo_eiffel.html)


------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/eiffel_software/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/eiffel_software/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:eiffel_software-digest@...
    mailto:eiffel_software-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    eiffel_software-unsubscribe@...

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/


Re: Debugger skipping assertions

by Jimmy J. Johnson :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Yes, you're correct.  

What confused me was that when I isolated the offending line of code,
preconditions and a check statement just above that line then were
checked.  I failed to realize that in one case I was calling the
feature and in the other it was part of a contract.  Thanks for the
reminder.

BTW, I like that word, "nested-ly".

jjj

>
> Are your assertions within other contracts?  Contracts don't get
> checked nested-ly.
>



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/eiffel_software/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/eiffel_software/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:eiffel_software-digest@...
    mailto:eiffel_software-fullfeatured@...

<*> To unsubscribe from this group, send an email to:
    eiffel_software-unsubscribe@...

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/