Support GT.M 5.4-000A, fixes $QUIT

Bug #672798 reported by Jon Tai on 2010-11-08
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenVista/GT.M Integration
Medium
Unassigned

Bug Description

Given a routine like:

TEST
  Q
F()
  Q:$Q 1 Q

Doing the following will result in an error on GT.M V5.4-000 x86:

S X="Y"
S @X@(1)=$$F^TEST
%GTM-E-QUITARGREQD, Quit from an extrinsic must have an argument

The error is caused because $QUIT in the TEST routine is incorrectly set to 0, even though it's being invoked as a function. The CIANBEVT routine contains a real-world example of this usage: S @FDA@(3)=$$GETUID^CIANBUTL

The bug is fixed in GT.M V5.4-000A: "GT.M now ensures a proper value for $QUIT on x86 and x86-64 GNU/Linux. In V5.4-000 under certain circumstances, it could return an inappropriate result. [x86-64 Linux, x86 Linux] (S9K02-002755) V5.4-000A" http://tinco.pair.com/bhaskar/gtm/doc/articles/GTM_V5_4_000A_Release_Notes.html#S9K02-002755

We should package the newer version of GT.M.

Related branches

Jon Tai (jontai) wrote :

As a workaround, you can assign $$F^TEST to a temporary variable:

S X="Y"
S Z=$$F^TEST,@X@(1)=Z

Jon Tai (jontai) on 2010-11-12
Changed in openvista-gtm-integration:
status: New → Fix Committed
Jon Tai (jontai) on 2010-11-13
Changed in openvista-gtm-integration:
importance: Undecided → Medium
Jon Tai (jontai) on 2010-12-07
Changed in openvista-gtm-integration:
milestone: none → 0.8.11
Jon Tai (jontai) on 2010-12-07
Changed in openvista-gtm-integration:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers