[Info-vax] Error Messages in Basic - %BASIC-E-PARMODNOT, mode for parameter <n> of routine <procedure-name> not as declared
Neil Rieck
n.rieck at sympatico.ca
Wed Jun 12 07:37:28 EDT 2019
On Sunday, June 9, 2019 at 10:07:17 PM UTC-4, Arne Vajhøj wrote:
> On 6/9/2019 10:43 AM, Dave Froble wrote:
> > On 6/9/2019 7:28 AM, Neil Rieck wrote:
> >> On Saturday, June 8, 2019 at 11:16:47 PM UTC-4, Dave Froble wrote:
> >>> I guess where I'm confused is what is the difference between a RECORD
> >>> structure that is basically 8 bytes, regardless of the makeup, and the
> >>> BASIC QUAD variable definition. I'm assuming there is a difference,
> >>> since the reported problem exists. But what is that difference, and,
> >>> WHY?
> >>>
> >>> If declaring a variable, and passing it by ref, then what I'd expect is
> >>> simply the address of the 8 bytes. What am I missing?
>
> Apparently Basic do think the two declarations are non-compatible
> in the context.
>
> Can you assign them to each other?
>
> If no then it sort of make sense that they are not interchangeable
> in a call either.
>
> >> IIRC (I am not at work), QUAD is an signed variable while
> >> BASIC$QUADWORD is unsigned. If you begin every VMS-BASIC program with
> >> "option type=explicit" (and every professional programmer would)
> >
> > Oh, no, I've been exposed! I was posing as a "professional programmer"
> > when I guess I'm really not a "professional programmer".
> >
> > I guess when one programs in a language that forces variable
> > definitions, then one might feel that it's a "good practice".
> >
> > Interesting that so many in c.o.v express their way as being the only way.
>
> 25 years ago or so, then it was generally considered best practice.
>
> Today many of the most popular languages are even less type strict
> than Basic. In some of them it is not even possible to define the type
> of a variable. Like DCL.
>
> Arne
You can't "directly" assign them to each other. But you can use "a variant statement" within a record declaration to pass the payload of one into the other.
Neil Rieck
Waterloo, Ontario, Canada.
More information about the Info-vax
mailing list