== Why is this an issue? Because library names could change from environment to environment, they should never be hard-coded in a program. Instead, you should use a variable to specify the library name and set that variable with data external to the program. === Noncompliant code example [source,rpg] ---- CLRPFM FILE(XPJLIB/FILE01) ---- === Compliant solution [source,rpg] ---- CHGVAR VAR(&LIB01) VALUE(&PREFIX *CAT 'LIB') CLRPFM FILE(&LIB01/FILE01) ---- === Exceptions Hard-coding references to QTEMP, which is a temporary library, is allowed. ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) === Message Use a variable for the library name and set it with data external to the program. ''' == Comments And Links (visible only on this page) === on 12 Oct 2014, 16:51:40 Freddy Mallet wrote: Just a feeling @Ann, but I would decrease the severity to Major and would not activate this rule by default. === on 14 Oct 2014, 14:48:34 Ann Campbell wrote: \[~freddy.mallet] breaking this rule can (will) cause runtime failures, which is why I've made it critical. I set it to on by default because I've had 2 different companies ask me for the rule (and the second actually helped me specify it). === on 14 Oct 2014, 21:04:33 Freddy Mallet wrote: OK endif::env-github,rspecator-view[]