[Bug translator/18079] autocast doesn't work with @defined

fche at redhat dot com sourceware-bugzilla@sourceware.org
Wed Jun 22 15:48:00 GMT 2016


https://sourceware.org/bugzilla/show_bug.cgi?id=18079

Frank Ch. Eigler <fche at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |fche at redhat dot com

--- Comment #4 from Frank Ch. Eigler <fche at redhat dot com> ---
Please see the commit on branch fche/pr18079 for a possible fix to this.  I'd
appreciate a review.

commit 056cb27baac1ce3ab4d675dbbe4881afde801ca3
Author: Frank Ch. Eigler <fche@redhat.com>
Date:   Wed Jun 22 11:43:33 2016 -0400

    PR18079: support nested autocast / @defined

    We now perform const-folding & dead-code-elision during the type
    resolution loop, whenever an autocast expression gets evaluated.  This
    way, @defined(foo()->mm) type expressions can work as nature intended.

    This requires @defined() not to be short-circuit evaluated to 0 during
    a random const_folding process, so a flag is introduced to control its
    preservation or collapsing.  For the last (assert_resolvability) pass
    in the type resolution loop, this flag is set to true, so that
    genuinely unresolvable @defined($expressions) do get mapped to 0 in
    time for a last elision.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Systemtap mailing list