[Chapel Merge] Emit user error when field not found in getCRecord

Branch: refs/heads/main
Revision: 2bfda9c
Author: dlongnecke-cray
Log Message:

Merge pull request #18047 from dlongnecke-cray/fix-struct-gep-internal-error

Emit user error when field not found in getCRecordMemberGEP

Resolves #18022.

Change an INT_FATAL within getCRecordMemberGEP to a user facing
fatal error. This error can fire when the field of an extern record
cannot be found in external C code.

Reviewed by @daviditen. Thanks!

TESTING:

  • [x] ALL on linux64 when COMM=none

Signed-off-by: David Longnecker dlongnecke-cray@users.noreply.github.com

Modified Files:
A test/extern/records/OpaqueStruct.chpl

A test/extern/records/OpaqueStruct.compopts
A test/extern/records/OpaqueStruct.good
A test/extern/records/OpaqueStruct.h
A test/extern/records/OpaqueStruct.skipif
M compiler/llvm/clangUtil.cpp

Compare: https://github.com/chapel-lang/chapel/compare/e7fb0a59a112...2bfda9ce8843