Arrays

2 views
Skip to first unread message

Duke Normandin

unread,
Oct 18, 2021, 6:14:01 PM10/18/21
to Pike List
Pike v8.0 release 702 running Hilfe v3.5 (Incremental Pike Frontend)

> array(string) flat = ({"this", "that", "the", "other"});
> flat[1];(4) Result: "that"

> flat[1]=3;
(5) Result: 3

> flat[1];
(6) Result: 3

I was under the impression that array(string) would exclude any
other data types but strings.

What's going on?
--
Duke

Chris Angelico

unread,
Oct 18, 2021, 6:26:51 PM10/18/21
to Pike List
It doesn't work in Hilfe, but "#pragma strict_types" will flag a
script as wanting more stringent type checking, and will flag
assignments like that.

ChrisA

Duke Normandin

unread,
Oct 18, 2021, 6:30:35 PM10/18/21
to Pike List
Do you mean that the #pragma can be used in Hilfe as well as
scripts? Or just in scripts?
--
Duke

Chris Angelico

unread,
Oct 18, 2021, 7:08:05 PM10/18/21
to Pike List
Pragmas don't directly work in Hilfe, but you can use this directive
to enable strict_types:

> set warnings strict

Unfortunately, the version of Pike I'm using (a trunk build of 8.1.14)
has a lot of spurious warnings from strict_types, so I tend not to use
it. But if it works for you, then go for it.

ChrisA

Duke Normandin

unread,
Oct 18, 2021, 7:14:12 PM10/18/21
to Pike List
On Tue, 19 Oct 2021 10:07:43 +1100
I found out for myself that pragmas don't work in Hilfe - but
thanks for confirming it and for the alternate option. I'll give it
a try.

I work with emacs most of the time, so I'm trying to figure out a
slick workflow to learn with. Doing the learning code in Hilfe is
great, but if it's limited than it might cause more confusion which
I don't need.

Thanks agian ..
--
Duke

Duke Normandin

unread,
Oct 18, 2021, 8:00:28 PM10/18/21
to Pike List
On Tue, 19 Oct 2021 10:07:43 +1100
Chris Angelico <ros...@gmail.com> wrote:

[snip]

> > set warnings strict

That worked swell in my Hilfe! Thx
--
Duke

Reply all
Reply to author
Forward
0 new messages