[Chapel Merge] Use extern union not extern record for C unions

Branch: refs/heads/main
Revision: ca040c0
Author: mppf
Log Message:

Merge pull request #17752 from mppf/extern-union

Use extern union not extern record for C unions

This PR changes from using extern record to declare a C union to extern union.

See also issue #17749 which includes the rationale for this change.

Reviewed by @lydia-duncan - thanks!

  • [x] full local testing

    Modified Files:
    A test/extern/unions/externUnionRecordErrorLLVM.chpl
    A test/extern/unions/externUnionRecordErrorLLVM.compopts
    A test/extern/unions/externUnionRecordErrorLLVM.good
    A test/extern/unions/externUnionRecordErrorLLVM.skipif
    M compiler/codegen/cg-symbol.cpp
    M compiler/include/bison-chapel.h
    M compiler/next/lib/frontend/Parser/chpl.ypp
    M compiler/parser/bison-chapel.cpp
    M compiler/parser/chapel.ypp
    M doc/rst/language/spec/interoperability.rst
    M test/extern/unions/externUnion.chpl
    M test/extern/unions/externUnionNoTypedef.chpl
    M tools/c2chapel/c2chapel.py
    M tools/c2chapel/test/miscTypedefUnion.chpl
    M tools/c2chapel/test/nestedUnion.chpl
    M tools/c2chapel/test/opaqueUnion.chpl

    Compare: Comparing 7a310689edae...ca040c007a4e · chapel-lang/chapel · GitHub