Niakwa, Inc.

    

 


What's News
NPL Products
NPL Support
NPL Downloads
System Integration
swiggle_small.gif (991 bytes)

swiggle_small.gif (991 bytes)

Bug Report #13
For Niakwa Programming Language
Report Date - March 31, 1999

 

This report lists known problems in the Niakwa Programming Language, Releases 4.30 and 5.00, for all platforms supported, which were discovered after August, 1998. This report is in addition to Bug Reports 1 through 12. This report is available on the Web Site at www.niakwa.com and can be downloaded along with a Bug Report Index.
NOTES:
  • The first part of the Report contains closed or resolved bugs that were listed in previous reports. Bugs that are listed as "Under Review" in previous reports and are not listed in this report are still open.
     
  • Bugs are identified in this report by problem number, the internal Niakwa bug code number (shown in parentheses). Corrected bugs have in addition the report number where they were originally published.
     
  • Some bugs described in this report are corrected in a revision of the NPL RunTime that is not yet available for the field. Developers should be aware that Revision 4.xx bug correction may never be released to the field, and are published here for informational purposes only. All bug corrections noted in these releases have also been applied to NPL Release 4.30 / 5.00 (either the current version or future releases).
     
  • An interim revision of Release V NPL for MS-DOS based platforms, which corrects some of the bugs listed in this report, is available from Niakwa Technical Support on request. Contact Niakwa for details.
     
  • For a current update on corrected bugs, refer to the Bug Index that is updated monthly. The Bug Index can be downloaded or provided upon request.
     
  • For the latest product release available, refer to the latest Niakwa Newsletter or the Niakwa web site.
New Open Problems
1. Problem (1196)
If $OPTIONS byte 22 is set to HEX (00), color control sequences should be ignored. They aren’t.
Solution: Corrected on Revision 5.01.04
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32
2. Problem (1191)
When a numeric field is evaluated as an argument to a function call, it may be stored in a temporary area which is not preserved. If the parameter is a /POINTER to constant numeric, this can cause future references to the parameter to show an incorrect value.
Solution: Corrected on Revision 5.01.03
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32
3. Problem (1188)
An immediate mode STOP # statement displays as STOP "36212".
Solution: Corrected on Revision 5.10.03/4.31.02
Programs Affected: RTI
Revision Number: 5.00.09
Platforms: DOS/Windows
4. Problem (1185)
Bug 1104 fix (passing small constants to external DEFFN problem) was not corrected if the constant is the last parameter of a call.
Solution: Corrected on Revision 5.01.02
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: All
5. Problem (1183)
If two programs (almost) simultaneously start up in a configuration that uses NIAKNETW communications, the runtime should make one task wait, but it doesn’t. The result could be an unsuccessful startup, and can reportedly also result in a blue screen of death under Win98.
Solution: Corrected on Revision 5.00.10
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Windows
6. Problem (1182)
If RTIWIN32 is started with the /B option, the process hangs when the application $ENDs. Also, if the app comes to foreground by creating the RTI window (due to a KEYIN, INPUT, or LINPUT or STOP statement), the text on the foreground window is not up to date.
Solution: Corrected on Revision 5.00.10
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Windows
7. Problem (1180)
If RTIWIN32 is started with the /B (background) option, and no user INPUT/KEYIN/LINPUT has caused the RTI window to appear, a $SHELL command hangs the runtime.
Workaround: Don’t use the /B option.
Solution: Corrected on Revision 5.00.10
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Windows
8. Problem (1177)
If a network printer is configured, but not captured (for use by DOS programs) under WIN98, accessing diskimages may result in lock violation errors.
Workaround: Change properties of all network printers to support a DOS capture address.
Solution: Corrected on Revision 5.01.03
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Windows
9. Problem (1176)
Logical expressions ordered with a parenthesis fail to compile correctly when using RTI386. A syntax error usually occurs.
Solution: Corrected on Revision 4.31.01
Programs Affected: RTI386 RTP386
Revision Number: 4.30.09
Platforms: Windows
10. Problem (1167)
When printing to a GDI printer (without the XPA option), NPL determines the number of lines per page based on the default font and page metrics. If the application does not issue form feed characters, and the first character(s) sent to the start of a new page are line feeds (HEX(0A)), the line feed is not printed.
Solution: Corrected on Revision 5.01.02
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Windows32
11. Problem (1159)
For the WIN32 version of NDM/Btrieve, setting the read blocking count to a value other than 1 results in incorrect records being returned on a sequential record read.
Workaround: Do not set Read Blocking to value larger than 1 on WIN32.
Solution: Corrected on Revision 5.10.01
Programs Affected: NDM
Revision Number: 5.00.09
Platforms: WIN32
12. Problem (1157)
The #HDC variable is incorrectly decompiled as #INSTALLID. If a program statement containing a reference to #HDC is edited and recompiled, the reference will be changed to #INSTALLID.
Solution: Corrected on Revision 5.00.19
Programs Affected: RTI B2C
Revision Number: 4.30.09/5.00.09
Platforms: All
13. Problem (1156)
In a DOS / Windows environment, setting $OPTIONS byte 39 to HEX(01) to avoid implied opens causes incorrect data (from sector 0) to be returned if a program tries to access data on a locked diskimage (and must wait).
Workaround: If the HEX(02) bit in $OPTIONS byte 39 is set, the bug does not occur. So set $OPTIONS byte 39 to HEX(03).
Solution: Corrected on Revision 5.00.16
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: DOS/Windows
14. Problem: (01154)
When SELECT LOG is enabled, the demo script commands for mouse clicks are incorrect if the row or column value is in the range 1 – 9. A value of 0 recorded for the row or column.
Solution: Corrected on Revision 5.00.16.
Programs Affected: RTI
Revision Number: 5.00.09
Platforms: WIN32 / Cport
15. Problem: (01153)
Numeric parameters that are computed values (with a scaled exponent) are not converted correctly to INT( ) parameters
Solution: Corrected on Revision 5.00.16.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32
16. Problem: (01152)
If a $DEVICE uses the SET=Y option, and the selected printer specification is shorter than the original $DEVICE, the $DEVICE function returns additional leftover information after the new valid $DEVICE specification.
Solution: Corrected on Revision 5.00.16.
Programs Affected: RTI RTP
Revision Number: 4.30.09 / 5.00.09
Platforms: Windows
17. Problem: (01150)
If you are running on a mixed Novell and NT network, running RTIWIN32 or RTIWIN with a boot program located on a drive mapped to an NT server can cause the runtime to fail to detect Novell.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Mixed Novell / NT Network
18. Problem: (01149)
Scanning procedure for NETID.TBL is defective. On the last 256 bytes of the file, data is skipped – approximately every second line. As a result, some NETID values will not be recognized as valid.
Workaround: A temporary workaround can be obtained by adding more than 256 characters of comments to the end of the file, (i.e. five or more lines of : ;filler xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32
19. Problem: (01148)
PAGE UP and PAGE DOWN do not work properly on HELP screen. If there is a previous/next page, it isn’t always displayed properly; if there is no previous/next page, the RunTime will crash.
Solution: Corrected on Revision 5.00.13.
Programs Affected: RTI
Revision Number: 5.00.09
Platforms: Cport / WIN32
20. Problem: (01147)
When the user follows links from the main HELP screen to other HELP screens, the "Previous Help" and "Leave Help" buttons are not displayed properly.
Solution: Corrected on Revision 5.00.13.
Programs Affected: RTI
Revision Number: 5.00.09
Platforms: Cport / WIN32
21. Problem: (01146)
Between evaluating a SWITCH numeric expression and testing CASE values, NPL may poll the message queue to check for a HALT key. If an external callback to NPL occurs at this point as the result of processing messages, the temporary value used in SWITCH may be overwritten. The result will be an incorrectly executed SWITCH.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32
22. Problem: (01145)
A RENAME V or other RENAME operation that involves long variable names leaves the reference count of the long identifier incorrect (too small). This can result in an internal error if a subsequent modification to code changes the number of references to the new variable, since NPL will discard identifiers whose reference count is 0.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI
Revision Number: 5.00.09
Platforms: Cport / WIN32
23. Problem: (01144)
If the floating point option is enabled, trigonometric functions (SIN, COS, TAN) applied to arguments very near 0 that underflow double precision (i.e. less than 1E-308) should return the same value as a 0 argument but don’t.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Cport / WIN32
24. Problem: (01143)
If the floating point option is enabled, a transcendental function acting on an integer (eg EXP (1)) can incorrectly report on overflow if a previous transcendental used intermediate values that exceeded double precision (such as EXP(-679.26261)).
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Cport / WIN32
25. Problem: (01142)
If 2200T syntax (no parenthesis around allocation size) is used when specifying the allocation table for a new file in DATA SAVE DC OPEN, incorrect p-code can be generated. When this old syntax is compiled and the previously compiled DATA LOAD / SAVE DC OPEN statement was of a specific type (either a DATA LOAD DC OPEN or a DATASAVE DC OPEN statement for which the allocation reuses a scratched file) the generated p-code is incorrect and will cause a fault when executed.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Cport / WIN32
26. Problem: (01140)
A GOSUB, GOTO or THEN that branches to the same line number is not checked at run time to ensure that the branch does not leave or enter a procedure/function body. Subsequently executing an invalid call into a procedure body can result in a fault.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: All
27. Problem: (01139)
The compiler doesn’t permit in-line comments after open parentheses and commas for parameters in DEFFN’ statements, as the MASM version does.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI B2C
Revision Number: 5.00.09
Platforms: Cport / WIN32
28. Problem: (01138)
For the version of $OBJECT that uses a LIN table, the p-code level passed in the function is ignored. The returned p-code level will only increase for successive uses of the $OBJECT function.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: Cport / WIN32
29. Problem: (01136)
If a non-existent print-class file with the RDO=Y option is accessed, an error should be generated (without RDO=Y the file is created automatically if it does not exist). Instead, the file was created automatically.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32
30. Problem: (01135)
If a source file containing invalid escape sequences (i.e. pipe character not followed by 2 hex digits) is saved, an error diagnostic is issued but the saved program can be invalid (with missing lines, etc.) if reloaded.
Solution: Under review.
Programs Affected: B2C
Revision Number: 5.00.09
Platforms: WIN32
31. Problem: (01134)
Programs with very large long identifier name tables (in excess of 32K) cannot be decompiled or produced by B2C of any kind. However, RTI can save programs with LIN’s larger than this. This means that sometimes a program that is valid cannot be viewed by the Workbench (which uses B2CWIN32 to get source code).
Solution: Corrected on Revision 5.00.10.
Programs Affected: B2C
Revision Number: 5.00.09
Platforms: All
32. Problem: (01131)
Logical expressions which contains both boolean (i.e. X meaning X<>0) and parenthesis with at least 2 AND or OR operators will LIST incorrectly. (The code executes correctly).
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI B2C
Revision Number: 5.00.09 4.30.09
Platforms: All
33. Problem: (01130)
When stepping through code, if the current line is overlaid from a boot or program file without doing a CLEAR P and then the program is restarted, breakpoints may be incorrectly determined. This can cause the program to operate incorrectly or fault.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI
Revision Number: 5.00.07
Platforms: All
34. Problem: (01129)
If a variable address is used in a SELECT #x with more than 3 characters, the string function $SELECT(#x) returns more than 3 characters. On other platforms, and on previous releases, exactly 3 characters are always returned by $SELECT.
Solution: Corrected on Revision 5.00.10.
Programs Affected: RTI RTP
Revision Number: 5.00.09
Platforms: WIN32 / C-port
35. Problem (0958)
Modifications to programs with inline comments can inadvertently change the p-code label to the current release.
Solution: Corrected on Revision 5.00.19
Programs Affected: RTI
Revision Number: 4.2x
Platforms: All
36. Problem: (00955)
A spurious Soft CR and : are introduced at the end of image statements when recalled for the first time. After deleting them, they are not re-introduced on the subsequent recalls.
Solution: Under review.
Programs Affected: RTI RTP
Revision Number: 4.30.09 / 5.00.09
Platforms: DOS/Win
37. Problem: (0954)
REM$PC is not correctly saved (or loaded) by the editor.
Solution: Under review.
Programs Affected: Workbench
Revision Number: 5.00.09
Platforms: All
38. Problem: (00953)
The Universal Upgrade fails with: "STOP 5400 NTFSMARK.EXE"
Workaround: This problem can result from:
  1. Incorrect version of the EXPAND.EXE program be located and used.
  2. Insufficient base memory to run the EXPAND program.
  3. The actual error is recorded in the EXPAND.LOG file located in the targeted upgrade directory. Review the file, correct the problem and execute the upgrade procedure again.
Solution: Corrected on Revision 5.00.18.
Programs Affected: UTILITY
Revision Number: 5.00.09
Platforms: WIN95


 

blank.gif (841 bytes)


Niakwa, Basic-2C and NPL are trademarks of Niakwa, Inc. All other products mentioned are registered trademarks or trademarks of their respective companies.

Questions or problems regarding this web site should be directed to webmaster@niakwa.com.
Copyright 1996-2010 Niakwa, Inc. All rights reserved.
Last updated: Thursday January 07, 2010.