[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: idl5.3 create_struct()

"R.Bauer" wrote:
> I was very surprised and afraid this morning about the definition
> changes of possible signs on tagname definitions.
> The only non_alphanumeric signs which are allowed in the new version is
> '$' and '_'.
> The '!' sign is only defined for the first place.
> a=create_struct('test@core',1)
> % CREATE_STRUCT: Illegal tag name: test@core.
> % Execution halted at:  $MAIN$
> I have had no information about such changes I don't found any hint's in
> the what's new topics.

I noticed the same thing in the IDL 5.3 beta release in September 1999.
RSI technical support told me this was a *bug* in IDL prior to version
5.3. According to the IDL documentation, structure tag names must
conform to the same rules as variable names. As far back as IDL 5.1,
this was documented in 'Building IDL Applications/Structures/Creating
and Defining Structures':

"Structure names and tag names follow the rules of IDL identifiers: they
must begin with a letter; following characters can be letters, digits,
or the underscore or dollar sign characters; and case is ignored."

Prior to IDL 5.3, create_struct() did not check for legal tag names. In
IDL 5.3, it does.


Liam E. Gumley
Space Science and Engineering Center, UW-Madison