Skip to content

IDL Problem Code 27 with alias duplicate-struct

Want to disable me? Check out the configuration guide to learn more.

Danger

If your structures have different properties and property types, then this will cause problems

This identifies user-defined structures that have more than one definition present.

Note that IDL is case insensitive when resolving structures and, once a structure is compiled/defined, it can no longer be changed.

Here is an example of problem code and how to fix it:

idl
pro myclass__define
  ; ^^^^^ duplicate procedure

  !null = {MyStruct, property: 42}
  ;        ^^^^^^^^ duplicate structure
end

pro myotherclass__define
  ; ^^^^^ duplicate procedure

  !null = {MyStruct, property: 42}
  ;        ^^^^^^^^ duplicate structure
end

To fix, change the names of your structures:

idl
pro myclass__define
  ; ^^^^^ duplicate procedure

  !null = {MyClass, property: 42}
end

pro myotherclass__define
  ; ^^^^^ duplicate procedure

  !null = {MyOtherClass, property: 42}
end

Licensed under MIT.