[Chapel Merge] Fix resolution of edition guarded functions that are cloned

Branch: refs/heads/main
Revision: de0167bf648f395ce63af247219fa3ce067b1cb0
Author: jabraham17
Link: Fix resolution of edition guarded functions that are cloned by jabraham17 · Pull Request #28893 · chapel-lang/chapel · GitHub
Log Message:
Fix resolution of edition guarded functions that are cloned (#28893)

Fixes resolution of edition guarded functions that get cloned.

Technically, the only required fix is the code in
FnSymbol::copyInnerCore, but I went ahead and added similar code
everywhere unstableMsg is propagated to future proof the code
(editions don't work in all the places unstable/deprecated warnings do,
yet)

  • paratest

[Reviewed by @DanilaFe]

Compare: Comparing aca1b827fd31a6a36f63c5ec530ec8aae9c9dc73...a3b9290e7cc62ea578f6c5387b1d82915104b108 · chapel-lang/chapel · GitHub

Diff:
M compiler/AST/AggregateType.cpp
M compiler/AST/FnSymbol.cpp
M compiler/AST/build.cpp
M compiler/passes/buildDefaultFunctions.cpp
A test/edition/basics/functionCloning.chpl
A test/edition/basics/functionCloning.compopts
A test/edition/basics/functionCloning.good
A test/edition/basics/functionCloning.preview.good
https://github.com/chapel-lang/chapel/pull/28893.diff