Historically ``++/COPY++`` procedures contained all of the specifications required for each procedure, so for example ``++xxxxF /COPY++`` would be used to copy the F lines from another ``++F++`` spec. However, this practice results in code that is difficult to understand and maintain. Instead, the use of ``++/COPY++`` statements should be replaced with explicit declarations. == Noncompliant Code Example Given the default list of specs, H,F,I,D,C,O: [source,rpg] ---- F/COPY HRSILERPG,RSX36 ---- == Compliant Solution [source,rpg] ---- FSSINRTP IF E K DISK INFSR(*PSSR) F* F* Interest Rates File F* ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::message.adoc[] include::parameters.adoc[] endif::env-github,rspecator-view[]