Readonly variables are assigned the PSECT attribute NOWRT and are stored in the PSECT $READONLY$ which is a nonwritable data area. Other programs can access the PSECT directly, but none of the information can be overwritten. You can use the readonly modifier with the storage-class keywords [extern], static, globaldef, and globaldef{"name"}. You can use both the readonly and noshare modifiers with the [extern] and the globaldef{"name"} specifiers. If you use both modifiers with either the static or the globaldef specifiers, the compiler ignores noshare and accepts readonly.