Branch: refs/heads/main
Revision: abb09e4e39dec61439cd6bc25cf91e0e0ea69170
Author: Brad Chamberlain
Link: [Merge pull request] # 20895 from bradcray:int-error-no-line-number Improve internal errors w.r.t. mentions of line numbers by bradcray · Pull Request #20895 · chapel-lang/chapel · GitHub
Log Message:
[Merge pull request] # 20895 from bradcray:int-error-no-line-number
Squash mention of line number in internal errors when we don't print one
Based on a recent user comment, it was noted that our standard internal error message refers to a line number, but that not all internal errors generate line numbers. This improves that message to only print that part of the message in the event that a line number was actually printed out. While here, I also added AST nodes to some assertion errors to add line numbers for them; however, many more potential cases for improvement like this remain. TODO: - either update .bad files for cases that do this today - or else update their internal errors to include a line number
Compare: Comparing db5a6a74fd7e7ba4be14a4d820084fee3c9a2d34...abb09e4e39dec61439cd6bc25cf91e0e0ea69170 · chapel-lang/chapel · GitHub
Diff: https://github.com/chapel-lang/chapel/pull/20895.diff
FilesChanged: Improve internal errors w.r.t. mentions of line numbers by bradcray · Pull Request #20895 · chapel-lang/chapel · GitHub
Modified Files:
.github/workflows/email.yml,compiler/include/parser.h,compiler/main/driver.cpp,compiler/optimizations/copyPropagation.cpp,compiler/optimizations/gpuTransforms.cpp,compiler/parser/parser.cpp,compiler/passes/insertWideReferences.cpp,compiler/resolution/cleanups.cpp,compiler/resolution/functionResolution.cpp,compiler/util/misc.cpp,doc/rst/conf.py,doc/rst/language/spec/classes.rst,doc/rst/language/spec/modules.rst,doc/rst/meta/builtins/index.rst,frontend/include/chpl/framework/Context.h,frontend/include/chpl/framework/ErrorBase.h,frontend/include/chpl/framework/ErrorWriter.h,frontend/include/chpl/framework/error-classes-list.h,frontend/include/chpl/framework/mark-functions.h,frontend/include/chpl/resolution/scope-queries.h,frontend/include/chpl/resolution/scope-types.h,frontend/include/chpl/types/QualifiedType.h,frontend/include/chpl/types/TupleType.h,frontend/include/chpl/uast/Decl.h,frontend/include/chpl/uast/IntentList.h,frontend/include/chpl/uast/Try.h,frontend/include/chpl/uast/VisibilityClause.h,frontend/lib/framework/Context.cpp,frontend/lib/framework/ErrorBase.cpp,frontend/lib/framework/ErrorWriter.cpp,frontend/lib/framework/error-classes-list.cpp,frontend/lib/parsing/ParserContextImpl.h,frontend/lib/parsing/parsing-queries.cpp,frontend/lib/resolution/InitResolver.cpp,frontend/lib/resolution/Resolver.cpp,frontend/lib/resolution/Resolver.h,frontend/lib/resolution/resolution-queries.cpp,frontend/lib/resolution/scope-queries.cpp,frontend/lib/resolution/scope-types.cpp,frontend/lib/types/QualifiedType.cpp,frontend/lib/types/TupleType.cpp,frontend/lib/uast/Builder.cpp,frontend/lib/uast/Try.cpp,frontend/lib/uast/post-parse-checks.cpp,frontend/test/parsing/testParseChecks.cpp,frontend/test/parsing/testParseTryCatchThrow.cpp,frontend/test/resolution/CMakeLists.txt,frontend/test/resolution/testErrors.cpp,frontend/test/resolution/testInteractive.cpp,frontend/test/resolution/testScopeResolve.cpp,modules/internal/ChapelBase.chpl,modules/internal/ChapelLocale.chpl,modules/internal/OwnedObject.chpl,modules/internal/SharedObject.chpl,modules/internal/fixInternalDocs.sh,modules/standard/AutoMath.chpl,modules/standard/BitOps.chpl,modules/standard/CTypes.chpl,modules/standard/ChapelIO.chpl,modules/standard/FileSystem.chpl,modules/standard/GPU.chpl,modules/standard/IO.chpl,modules/standard/Math.chpl,modules/standard/OS.chpl,modules/standard/Time.chpl,modules/standard/Types.chpl,runtime/include/chpl-tasks.h,runtime/include/chpl-topo.h,runtime/include/qio/qio.h,runtime/src/comm/gasnet/comm-gasnet.c,runtime/src/comm/ofi/comm-ofi.c,runtime/src/comm/ugni/comm-ugni.c,runtime/src/tasks/fifo/tasks-fifo.c,runtime/src/tasks/qthreads/tasks-qthreads.c,runtime/src/topo/hwloc/topo-hwloc.c,runtime/src/topo/none/topo-none.c,test/chpldoc/basics/fullyCommented.doc.good,test/chpldoc/basics/longerComments.doc.good,test/chpldoc/basics/sparselyCommented.doc.good,test/chpldoc/compflags/textonly/fullyCommented.doc.good,test/chpldoc/compflags/textonly/longerComments.doc.good,test/chpldoc/compflags/textonly/sparselyCommented.doc.good,test/chpldoc/errhandling/throwing.doc.good,test/chpldoc/globals/calls.doc.good,test/chpldoc/intents.doc.good,test/chpldoc/linkage-spec/exportTest.doc.good,test/chpldoc/linkage-spec/externTest.doc.good,test/chpldoc/linkage-spec/inlineTest.doc.good,test/chpldoc/module/sameName.doc.good,test/chpldoc/module/surroundingModule.doc.good,test/chpldoc/nodoc/privateClasses.doc.bad,test/chpldoc/nodoc/privateTypeAlias.doc.bad,test/chpldoc/types/returns/basic.doc.good,test/chpldoc/variableArguments.doc.good,test/classes/delete-free/multiple-modifiers.good,test/classes/generic/domainQueryField-feature.bad,test/classes/generic/domainQueryField.good,test/classes/vass/def-with-type-binding-within-class/currently-error.good,test/compflags/configs/configNotModScope.good,test/deprecated/IO/writersReturnBool.md,test/deprecated/IO/writersReturningBool.good,test/deprecated/IO/writersReturningBoolFlagUnset/normalErrorMessage.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/normalErrorMessage.good,test/deprecated/IO/writersReturningBoolFlagUnset/userDefinedWritelnMethod.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/userDefinedWritelnMethod.good,test/deprecated/IO/writersReturningBoolFlagUnset/wrbTopWritef.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/wrbTopWritef.good,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWrite.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWrite.good,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWriteBytes.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWriteBytes.good,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWritebits.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWritebits.good,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWritef.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWritef.good,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWriteln.chpl,test/deprecated/IO/writersReturningBoolFlagUnset/wrbWriteln.good,test/deprecated/filesystem-functions.chpl,test/deprecated/filesystem-functions.good,test/errhandling/modes/implicit-relaxed-try-inner.good,test/errhandling/modes/implicit-relaxed-try-nothrows-inner.good,test/errors/NOTEST,test/errors/asWithUseExcept-brief.good,test/errors/asWithUseExcept-detailed.good,test/errors/asWithUseExcept.chpl,test/errors/asWithUseExcept.compopts,test/errors/dotExprInUseImport-brief.good,test/errors/dotExprInUseImport-detailed.good,test/errors/dotExprInUseImport.chpl,test/errors/dotExprInUseImport.compopts,test/errors/duplicateEnumElement-brief.good,test/errors/duplicateEnumElement-detailed.good,test/errors/duplicateEnumElement.chpl,test/errors/duplicateEnumElement.compopts,test/errors/ifBranches-brief.good,test/errors/ifBranches-detailed.good,test/errors/ifBranches.chpl,test/errors/ifBranches.compopts,test/errors/implicitModule-brief.good,test/errors/implicitModule-detailed.good,test/errors/implicitModule.chpl,test/errors/implicitModule.compopts,test/errors/implicitSubModule-brief.good,test/errors/implicitSubModule-detailed.good,test/errors/implicitSubModule.chpl,test/errors/implicitSubModule.compopts,test/errors/incompatibleKinds-brief.bad,test/errors/incompatibleKinds-brief.good,test/errors/incompatibleKinds-detailed.bad,test/errors/incompatibleKinds-detailed.good,test/errors/incompatibleKinds.chpl,test/errors/incompatibleKinds.compopts,test/errors/incompatibleKinds.future,test/errors/incompatibleRangeBounds-brief.good,test/errors/incompatibleRangeBounds-detailed.good,test/errors/incompatibleRangeBounds.chpl,test/errors/incompatibleRangeBounds.compopts,test/errors/incompatibleTypeAndInit-brief.good,test/errors/incompatibleTypeAndInit-detailed.good,test/errors/incompatibleTypeAndInit.chpl,test/errors/incompatibleTypeAndInit.compopts,test/errors/invalidNew-brief.good,test/errors/invalidNew-detailed.good,test/errors/invalidNew.chpl,test/errors/invalidNew.compopts,test/errors/laterVar-brief.good,test/errors/laterVar-detailed.good,test/errors/laterVar.chpl,test/errors/laterVar.compopts,test/errors/managedRecord-brief.good,test/errors/managedRecord-detailed.good,test/errors/managedRecord.chpl,test/errors/managedRecord.compopts,test/errors/multipleQuestionArgs-brief.good,test/errors/multipleQuestionArgs-detailed.good,test/errors/multipleQuestionArgs.chpl,test/errors/multipleQuestionArgs.compopts,test/errors/nonIterable-brief.good,test/errors/nonIterable-detailed.good,test/errors/nonIterable.chpl,test/errors/nonIterable.compopts,test/errors/redef-brief.good,test/errors/redef-detailed.good,test/errors/redef.chpl,test/errors/redef.compopts,test/errors/tupleDecls-brief.good,test/errors/tupleDecls-detailed.good,test/errors/tupleDecls.chpl,test/errors/tupleDecls.compopts,test/errors/tupleExpandNamedArgs-brief.good,test/errors/tupleExpandNamedArgs-detailed.good,test/errors/tupleExpandNamedArgs.chpl,test/errors/tupleExpandNamedArgs.compopts,test/errors/tupleExpandNonTuple-brief.good,test/errors/tupleExpandNonTuple-detailed.good,test/errors/tupleExpandNonTuple.chpl,test/errors/tupleExpandNonTuple.compopts,test/errors/unknownEnumElement-brief.good,test/errors/unknownEnumElement-detailed.good,test/errors/unknownEnumElement.chpl,test/errors/unknownEnumElement.compopts,test/errors/unsupportedAsIdent1-brief.good,test/errors/unsupportedAsIdent1-detailed.good,test/errors/unsupportedAsIdent1.chpl,test/errors/unsupportedAsIdent1.compopts,test/errors/unsupportedAsIdent2-brief.good,test/errors/unsupportedAsIdent2-detailed.good,test/errors/unsupportedAsIdent2.chpl,test/errors/unsupportedAsIdent2.compopts,test/errors/useImportNotModule-brief.good,test/errors/useImportNotModule-detailed.good,test/errors/useImportNotModule.chpl,test/errors/useImportNotModule.compopts,test/errors/useImportUnknownMod-brief.good,test/errors/useImportUnknownMod-detailed.good,test/errors/useImportUnknownMod.chpl,test/errors/useImportUnknownMod.compopts,test/errors/useImportUnknownSym-brief.good,test/errors/useImportUnknownSym-detailed.good,test/errors/useImportUnknownSym.chpl,test/errors/useImportUnknownSym.compopts,test/errors/valueAsTypeExpr-brief.good,test/errors/valueAsTypeExpr-detailed.good,test/errors/valueAsTypeExpr.chpl,test/errors/valueAsTypeExpr.compopts,test/extern/ferguson/mismatch-errors/mismatch-ri-iv.bad,test/extern/ferguson/mismatch-errors/mismatch-riv-iv.bad,test/functions/deitz/named/test_named6-error.good,test/functions/export/export-where.good,test/functions/iterators/bradc/captureEmpty.bad,test/functions/iterators/recursive/recursive-iter-findfilesfailure.chpl,test/functions/lambda/FCFAssertion.good,test/functions/lydia/paramFunctions/param-fun-intents.good,test/functions/operatorOverloads/operatorMethods/diffMod.good,test/functions/operatorOverloads/operatorNoKeyword.good,test/interop/python/defaultValues_global.bad,test/interop/python/multilocale/defaultValues_global.bad,test/library/standard/DateTime/testDatetime.chpl,test/library/standard/DateTime/testDatetimeTZ.chpl,test/library/standard/DateTime/testTime.chpl,test/library/standard/DateTime/testTimezone.chpl,test/library/standard/DateTime/testTimezoneConversions.chpl,test/library/standard/DateTime/unstableTimezones.good,test/library/standard/FileSystem/filerator/bradc/testboth.chpl,test/library/standard/FileSystem/filerator/bradc/walk-par.chpl,test/library/standard/FileSystem/filerator/bradc/walk.chpl,test/library/standard/FileSystem/filerator/listdir-errors.chpl,test/library/standard/FileSystem/filerator/listdir-errors.good,test/library/standard/FileSystem/lydia/getIDs/getting.chpl,test/library/standard/FileSystem/lydia/moveDir/moveEmpty.chpl,test/library/standard/FileSystem/nonUTF8/basic.chpl,test/library/standard/FileSystem/nonUTF8/basic.good,test/library/standard/IO/readAll/PREDIFF,test/library/standard/IO/readAll/jab.txt,test/library/standard/IO/readAll/readBytes.chpl,test/library/standard/IO/readAll/readBytes.good,test/library/standard/IO/readAll/readBytesArray.chpl,test/library/standard/IO/readAll/readBytesArray.good,test/library/standard/IO/readAll/readBytesArrayInsufficientCapacity.chpl,test/library/standard/IO/readAll/readBytesArrayInsufficientCapacity.compopts,test/library/standard/IO/readAll/readBytesArrayInsufficientCapacity.good,test/library/standard/IO/readAll/readBytesArrayLeaveExcessAlone.chpl,test/library/standard/IO/readAll/readBytesArrayLeaveExcessAlone.compopts,test/library/standard/IO/readAll/readBytesArrayLeaveExcessAlone.good,test/library/standard/IO/readAll/readBytesType.chpl,test/library/standard/IO/readAll/readBytesType.good,test/library/standard/IO/readAll/readRemainingBytes.chpl,test/library/standard/IO/readAll/readRemainingBytes.good,test/library/standard/IO/readAll/readRemainingString.chpl,test/library/standard/IO/readAll/readRemainingString.good,test/library/standard/IO/readAll/readString.chpl,test/library/standard/IO/readAll/readString.good,test/library/standard/IO/readAll/readStringType.chpl,test/library/standard/IO/readAll/readStringType.good,test/modules/cassella/use-module-as.good,test/modules/dinan/use_module_in_same_file.good,test/modules/errors/code-outside-of-module-error.good,test/modules/lydia/test-modSameNameBad.good,test/modules/lydia/test-modSameNameBadRequire.good,test/modules/lydia/test-modSameNameBadRequire2.good,test/modules/lydia/test-modSameNameBadRequireUse.good,test/optimizations/widepointers/exported-2.c,test/optimizations/widepointers/exported-2.chpl,test/optimizations/widepointers/exported-2.compopts,test/optimizations/widepointers/exported-2.good,test/optimizations/widepointers/exported-2.h,test/optimizations/widepointers/exported-2.numlocales,test/optimizations/widepointers/exported-2.prediff,test/optimizations/widepointers/exported-2.skipif,test/optimizations/widepointers/exported-fn.chpl,test/optimizations/widepointers/exported-fn.compopts,test/optimizations/widepointers/exported-fn.good,test/optimizations/widepointers/exported-fn.h,test/optimizations/widepointers/exported-fn.numlocales,test/optimizations/widepointers/exported-fn.skipif,test/param/config/ambiguousConfig.good,test/param/config/ambiguousConfigType.good,test/parsing/ferguson/many-errors-2.good,test/regex/empty-channel-matches.good,test/regex/empty-channel-matches.prediff,test/release/examples/primers/chpldoc.doc.good,test/release/examples/primers/errorHandling.good,test/release/examples/primers/learnChapelInYMinutes.prediff,test/studies/shootout/reverse-complement/bradc/revcomp-blc-copyPropBug.bad,test/studies/shootout/reverse-complement/bradc/revcomp-dowhile-bug.bad,test/trivial/bradc/localConfig.good,test/types/records/inDeeperSubmodule.good,test/types/records/inSubmodule.good,test/types/records/noShadowModule.good,test/users/chris/topleveluse.good,test/variables/export/export-var.good,test/visibility/import/enablesUnqualified/multipleUnqualified/operatorsAlone.good,test/visibility/import/enablesUnqualified/multipleUnqualified/operatorsFirst.good,test/visibility/import/enablesUnqualified/multipleUnqualified/operatorsLast.good,test/visibility/import/enablesUnqualified/operatorsAlone.good,test/visibility/only/innerModuleSharesName-topLevel-MdotM-useInDiffScope.good,test/visibility/only/innerModuleSharesName-topLevel-useInDiffScope.good,test/visibility/only/operatorsAlone.good,test/visibility/only/operatorsFirst.good,test/visibility/only/operatorsLast.good,test/visibility/private/classes/privateField.bad,test/visibility/private/classes/privateSecondaryMethod.bad,test/visibility/private/innerBlockBad.good,test/visibility/private/innerBlockBad2.good,test/visibility/private/localsBad.good,test/visibility/private/privateEnum.bad,test/visibility/private/typeAlias.bad,third-party/qthread/Makefile,tools/chpldoc/chpldoc.cpp,tools/mason/MasonPublish.chpl,tools/mason/MasonSearch.chpl,tools/mason/MasonUtils.chpl,util/build_configs/cray-internal/setenv-xc-x86_64.bash,util/chpl-completion.bash,util/cron/test-cray-xc-gpu-arkouda.bash,util/test/start_test.py
Removed Files: