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

Bug #672798 reported by Jon Tai
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenVista/GT.M Integration
Fix Released
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

Revision history for this message
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)
Changed in openvista-gtm-integration:
status: New → Fix Committed
Jon Tai (jontai)
Changed in openvista-gtm-integration:
importance: Undecided → Medium
Jon Tai (jontai)
Changed in openvista-gtm-integration:
milestone: none → 0.8.11
Jon Tai (jontai)
Changed in openvista-gtm-integration:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.