David,

 

We just came across this change in section 10.4.2. I believe (and Dave Rich concurs) that some signals got crossed and the LRM change removed the wrong paragraph and the deleted text should be retained. Here's the relevant change:

 

Arguments passed by reference are not copied into the subroutine area, rather, a reference to the original argument is passed to the subroutine. The subroutine can then access the argument data via the reference. To indicate argument passing by reference, the argument declaration is preceded by the ref keyword. The general syntax is:

 

Arguments passed by reference must be matched with equivalent data types. No casting shall be permitted. See Section 5.8.1, Equivalent Types.

 

And here's what I believe the change should be:

Arguments passed by reference are not copied into the subroutine area, rather, a reference to the original argument is passed to the subroutine. The subroutine can then access the argument data via the reference. Arguments passed by reference must be matched with equivalent data types (See Section 5.8.1, Equivalent Types). No casting shall be permitted. . To indicate argument passing by reference, the argument declaration is preceded by the ref keyword. The general syntax is:

 

    Arturo