[Chapel Merge] Document / Clean-up external types changes

Branch: refs/heads/main
Revision: 5938410
Author: bradcray
Link: Unavailable
Log Message:

Merge pull request #19453 from bradcray/extern-type-ctypes-doc-fixes

Document / Clean-up external types changes

[reviewed by @mppf]

  • in writing CHANGES.md entries, realized that I'd failed to document
    the ability to rename external C types in the spec, so updated its
    section to support that

  • in writing that up, I realized that I wasn't certain whether a
    renamed extern type alias would work for multiple symbols, and it
    turns out that it didn't, so extended the compiler to support that
    case and added a test to lock it in

  • because my eye happened to fall on it during bullet 1, updated and
    simplified the "Referring to Standard C Types" section which felt
    overwrought and slightly incorrect to me (_real32 rather than
    float?) This also happens to align nicely with the recent
    addition of the CTypes module

  • I also removed a dead footnote and renumbered the existing ones
    so that they weren't a sparse set of integers. :smiley:

    Modified Files:
    A test/extern/bradc/types/cint-rename-mult.chpl
    A test/extern/bradc/types/cint-rename-mult.good
    M compiler/AST/build.cpp
    M doc/rst/language/spec/interoperability.rst

    Compare: Comparing 04b55fec3b82...593841052541 · chapel-lang/chapel · GitHub