qqlang ?

30 views
Skip to first unread message

Igor I

unread,
Sep 27, 2021, 7:09:39 AM9/27/21
to dislin-users
Dear Users.
 I have persistent error in both 32-bit and 64-bit DISLIN modes:
--------------------------------------------------------------------------------
 <<<< Warning 3: Incorrect level in qqlang!   ( 0)
 <<<< Warning 3: Incorrect level in unit!   ( 0)
...
--------------------------------------------------------------------------------
when I execute the following the code:
---------------------------------
CALL METAFL('png')
...
CALL DISINI()
CALL UNIT(0)
...
----------------------------------
The error disappears if I use 'XWIN" in METAFL.
The questions is what is "qqlang" ? 
PS: I use dl_11_ic.zip (Intel compilers icl, ifort 64-bit)

Helmut Michels

unread,
Sep 27, 2021, 10:51:32 AM9/27/21
to dislin-users
Dear Igor,

qqlang is an internal Dislin routine that is called in the Fortran wrapper routine for DISINI. It informs the
C library that it is used from Fortran. This is for example important for callback routines, that have a
different syntax for Fortran and C (parameters passed by address or by value).
I think that the following happened:

     DISINI failed to create the 'PNG' output file and has not increased the level from 0 to 1.
     Therefore, qqlang and unit reported that they are called from level 0, which is not allowed.
     Many things will now go wrong without a Dislin initialization.
   
There should be other warnings before, such as 'Not enough memory', or 'File could not be created'.
I can't say why the PNG file could not be created. Perhaps, you have executed your program in a
directory without write privileges.

With best regards,

Helmut

Igor I

unread,
Sep 27, 2021, 12:08:37 PM9/27/21
to dislin-users
Dear Dr. Helmut Michels. 
Thank you very much for your quick reply. 
1) The code, as it is, runs perfectly OK in old 32-bit 
7.6 / Windows 9x/NT/2000, Digital Visual Fortran 5.x, 6.x
Thus, it's not connected with any file write permissions. 
2) I just wanted to upgrade it to x64 PC. 
I tried both ordinary and double precisions in the Intel compiler V11 versions - nothing works, in a similar way.
In particular, no any other warnings from Dislin. 

Do you have any suggestion for another diagnostics ? 

PS: I also tried RESET('ALL") - no success. 

понедельник, 27 сентября 2021 г. в 17:51:32 UTC+3, mic...@dislin.de:

Helmut Michels

unread,
Sep 27, 2021, 1:48:15 PM9/27/21
to dislin-users
Igor,

I have no idea at the moment. I need to reproduce the problem. Can you create PNG files with the
Dislin example exa_f90.f90? Can you send me a code with a few Dislin calls that shows the effect?

With best regards,

Helmut

Igor I

unread,
Sep 28, 2021, 12:22:59 PM9/28/21
to dislin-users
Dear Dr. Helmut Michels. 
SOLVED !
You were right, the problem was in unstable work of   SETFIL(CFILE). 
In particular, DISINI error gone when I provided FULL file name CFILE for SETFIL, like it was described 8 years ago here:
https://groups.google.com/g/dislin-users/c/BULq3tTePYY
However, I verified that the work directory in my case was unchanged. Thus, the relative file name is supposed to work, like it is in the earlier versions of Dislin (v8.6). 
But now (in Dislin V11.4) I had to provide the FULL file name in SETFIL.  
Please, check how do you verify the work directory name in SETFIL ? 
Thank you very much for your answer. 
Best regards, sincerely yours, Igor I
понедельник, 27 сентября 2021 г. в 20:48:15 UTC+3, mic...@dislin.de:

Helmut Michels

unread,
Sep 28, 2021, 5:18:14 PM9/28/21
to dislin-users
Hi Igor,

nice to hear that it is now working. I will check the mechanism of setting the filename with setfil.

With best regards,

Helmut
Reply all
Reply to author
Forward
0 new messages