Project

General

Profile

Bug #4482

Enable/Disable with empty EXCEPT causes issues

Added by Roger Borrello over 4 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Normal
Target version:
-
Start date:
Due date:
% Done:

100%

billable:
No
vendor_id:
GCD
case_num:
version:

History

#2 Updated by Roger Borrello over 4 years ago

20191231 Update: Fixed in 4207a-11356

There is already a testcase that should have found this: uast/enable_and_disable_empty_except_clause.p checked in Sat 2019-05-18 by Greg, which I verified does break with the below error:

    [javac] /home/rfb/projects/VirtualBox-VMs/shared/projects/testcases/uast/uast/buildarea/src/com/goldencode/testcases/abl/EnableAndDisableEmptyExceptClause.java:30: error: no suitable method found for enableExcept(no arguments)
    [javac]          fFrame.enableExcept();
    [javac]                ^
    [javac]     method CommonFrame.enableExcept(GenericWidget<?>[]) is not applicable
    [javac]       (actual and formal argument lists differ in length)
    [javac]     method CommonFrame.enableExcept(GenericWidget<?>) is not applicable
    [javac]       (actual and formal argument lists differ in length)
    [javac]     method CommonFrame.enableExcept(GenericWidget<?>[],handle) is not applicable
    [javac]       (actual and formal argument lists differ in length)
    [javac]     method CommonFrame.enableExcept(GenericWidget<?>,handle) is not applicable
    [javac]       (actual and formal argument lists differ in length)
    [javac] testcases/uast/uast/buildarea/src/com/goldencode/testcases/abl/EnableAndDisableEmptyExceptClause.java:34: error: no suitable method found for disableExcept(no arguments)
    [javac]          fFrame.disableExcept();
    [javac]                ^
    [javac]     method CommonFrame.disableExcept(GenericWidget<?>[]) is not applicable
    [javac]       (actual and formal argument lists differ in length)
    [javac]     method CommonFrame.disableExcept(GenericWidget<?>) is not applicable
    [javac]       (actual and formal argument lists differ in length)
    [javac] 2 errors

Testcase

def var i as int.
def frame f i.
enable all except with frame f.
wait-for go of frame f.
disable all except with frame f.

We saw there was CONTENT_ARRAY added to the AST:

    <ast col="0" id="12884901914" line="0" text="statement" type="STATEMENT">
      <ast col="1" id="12884901915" line="4" text="enable" type="KW_ENABLE">
        <annotation datatype="java.lang.Long" key="support_level" value="16400"/>
        <annotation datatype="java.lang.Long" key="scope-id" value="12884901959"/>
        <annotation datatype="java.lang.Long" key="frame-id" value="12884901960"/>
        <annotation datatype="java.lang.Long" key="block_par_id" value="154618822692"/>
        <annotation datatype="java.lang.Long" key="peerid" value="154618822712"/>
        <ast col="8" id="12884901917" line="4" text="all" type="KW_ALL">
          <ast col="12" id="12884901919" line="4" text="except" type="KW_EXCEPT"/>
          <ast col="0" id="12884901921" line="0" text="" type="CONTENT_ARRAY"/>
        </ast>
        <ast col="19" hidden="true" id="12884901922" line="4" text="with" type="FRAME_PHRASE">
          <annotation datatype="java.lang.Long" key="frame-id" value="12884901960"/>
          <ast col="24" hidden="true" id="12884901924" line="4" text="frame" type="KW_FRAME">
            <annotation datatype="java.lang.Long" key="support_level" value="16400"/>
            <ast col="30" id="12884901926" line="4" text="f" type="WID_FRAME"/>
          </ast>
        </ast>
      </ast>
    </ast>

#3 Updated by Roger Borrello over 4 years ago

  • Status changed from New to WIP

#4 Updated by Roger Borrello over 4 years ago

Code updates in 4207a-11356.

rules/annotations/cleanup.rules

#5 Updated by Greg Shah over 4 years ago

  • % Done changed from 0 to 100
  • Status changed from WIP to Test

#6 Updated by Roger Borrello about 4 years ago

Task branch 4207a was merged to trunk as revision 11344.

#7 Updated by Greg Shah about 4 years ago

  • Status changed from Test to Closed

Also available in: Atom PDF