Compaq Array Visualizer error code

Compaq Array Visualizer error code

I'm using AV 1.6.0, called from CVF (6.6.B) code via

call faglSaveAsFile (array, av_filename, status)

and am getting an error code (status) of 20484. The file is not saved, and this error code is not in the documentation. Can anyone help me determine what is wrong?


6 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I think it should also include the path name for example
call faglSaveAsFile(m_A,'c: est.agl',status)
Please try that and see if you get an error. It works for me.

Thanks. While verifying that av_filename was in fact a full pathname, I noticed that av_filename (declared as CHARACTER*(512)) had a large number of trailing blanks. On trimming these, the code works fine:

call faglSaveAsFile (M, trim(av_filename), status)

Too bad the error message wasn't more useful.

Thanks again,

Since av_filename is probably a C-style string, the only reliable way is to use trim(av_filename)//char(0).




I've seen you mention C-style strings in other topic threads. How is a person to know when he's dealing with a C-style string terminated with a null when calling a function or subroutine or not?


Well, all standard Fortran routines (DFLIB, DFPORT, intrinsics) use standard Fortran strings (fixed-length, no termination) except where stated otherwise in the docs (e.g. APPENDMENUQQ). On the other hand, all DFWIN (Windows API) routines use C-style strings (CHAR(0)-terminated).

As for other routines, such as Array Viewer ones, there's no 100% way to know except to consult the documentation. Another way is to inspect contents of appropriate .lib and take a look at the exported symbol - STDCALL routines have @n appended at the end, where n is number of arguments*4; if that number is greater than number of arguments in documentation, it's probably a Fortran-style string (hidden character length passed as additional argument).

I've just inspected AVIEW160.lib and saw that faglSaveAsFile is @16, indicating that string length is passed. Thus, my advice was wrong; it seems that it's just a bug in faglSaveAsFile -- they forgot to TRIM the filename argument.



Leave a Comment

Please sign in to add a comment. Not a member? Join today