RE: How to check if a variable is a filevar

2004-04-25 Thread Gyle Iverson
On Behalf Of Neil Charrington
Is there a way of checking to see if a variable is an opened 
file variable?

The the FileInfo() function will answer your question. Use the
FINFO$IS.FILEVAR key.

HTH,
Gyle


-- 
u2-users mailing list
[EMAIL PROTECTED]
http://www.oliver.com/mailman/listinfo/u2-users


RE: problem with VLIST

2004-04-19 Thread Gyle Iverson
Rados³aw Ryckowski wrote:
I have external program which crash with fault 11,  so I use VLIST
and here is strange thig. Vlist give me information about length ,
object compilatr etc. but when try to  list first line of code
crash with fault 11.  Layer type is Unknown.
Universe verison is 9.6.1.9 
OS version Tru64 Unix.

Hello, Radek,

Perhaps the object was compiled on a different type of processor. Try
using fnuxi or format.conv on the program. 

Best regards,
Gyle


--
u2-users mailing list
[EMAIL PROTECTED]
http://www.oliver.com/mailman/listinfo/u2-users


RE: [UV] Pass by value [was:Need/Want/Would like to know]

2004-02-18 Thread Gyle Iverson
Hello, Stuart.

I say this is a compiler flaw rather than a documentation flaw. While it
may prove challenging to dig through the parse-tree to figure out when
to make use of the implicit temporary, it should be done for matrix
components as it is for scalars. The compiler can do it far more
reliably for us than we can manually. 

Best regards,
Gyle

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Stuart Boydell
Sent: Wednesday, February 18, 2004 5:27 PM
To: U2 Users Discussion List
Subject: RE: [UV] Pass by value [was:Need/Want/Would like to know]
[snip]
So, to summarise, I feel my thesis is sound and the U2 developers should
either amend the documentation of fix the compiler so that passing a
matrix
variable by value works.
[snip]


-- 
u2-users mailing list
[EMAIL PROTECTED]
http://www.oliver.com/mailman/listinfo/u2-users


RE: [UV] Pass by value [was:Need/Want/Would like to know]

2004-02-18 Thread Gyle Iverson
Hello, Stuart.

Hmmm. The technique shown deals with string, real and whole number
variables. What about files, subroutines, sockets, etc? And performing
string concatenation would coerce numerics into strings, which may slow
things further down stream.

Best regards,
Gyle

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Stuart Boydell
Sent: Wednesday, February 18, 2004 6:20 PM
To: U2 Users Discussion List
Subject: RE: [UV] Pass by value [was:Need/Want/Would like to know]


   EQUATE CONST LIT ':'
   CALL xxx(CONST zzz(n))

Good call!

[snip]


-- 
u2-users mailing list
[EMAIL PROTECTED]
http://www.oliver.com/mailman/listinfo/u2-users


RE: Need/Want/Would like to know

2004-02-17 Thread Gyle Iverson
Hello, Mike.

I added a print X(100) following the Call in P1 and that fails too.

I suppose that the X(100) element is being cleared before the assignment
of A. However, as A is a pointer to X(100), both become cleared.

Perhaps the move_matrix op-code should test if the r-value (e.g. A)
resolves to the same l-value element (e.g. X(100)) and treat the
statement as a no-op in such cases. 

One can short-circuit the problem by adding an intermediate variable,
such as, C = A; X(100) = C, in P2.

Interesting puzzle. I wonder if there is a GTAR on this?

Best regards,
Gyle

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Mike Rajkowski
Sent: Tuesday, February 17, 2004 9:17 AM
To: U2 Users Discussion List
Subject: Need/Want/Would like to know


Someone came to me with the following code sample, and asked why this
would happen, while I have some thoughts, I would like a more definitive
answer (note no matter what the answer, I believe the solution is don't
do that)

Thanks,
Mike

On Universe 9.5:

04 ED BP P1 P2

SELECTed record name = P1.
6 lines long.

: P
0001: *
0002: DIM X(100)
0003: MAT X = 
0004: X(100) = 1
0005: CALL P2(X(100), MAT X)
0006: END
Bottom at line 6.
: EX

SELECTed record name = P2.
13 lines long.

: P
0001: SUBROUTINE P2(A, MAT X)
0002: DIM X(100)
0003: CRT 'A = ':A
0004: CRT 'X(100) = ':X(100)
0005: *
0006: CRT ; CRT SETTING X(100) = A
0007: X(100) = A
0008: CRT ; CRT NOW RE-CHECKING THE VALUES
0009: *
0010: CRT 'A = ':A
0011: CRT 'X(100) = ':X(100)
0012: RETURN
0013: END
Bottom at line 13.
: EX

File name= BP
Record name = 
RUN BP P1
A = 1
X(100) = 1

SETTING X(100) = A

NOW RE-CHECKING THE VALUES
A = Program P2: Line 10, Variable A previously undefined.  Empty
string used
.

X(100) = Program P2: Line 11, Variable $R0 previously undefined.
Empty stri
ng used.

-- 
u2-users mailing list
[EMAIL PROTECTED]
http://www.oliver.com/mailman/listinfo/u2-users


-- 
u2-users mailing list
[EMAIL PROTECTED]
http://www.oliver.com/mailman/listinfo/u2-users