Skip to content

enable backtraces by default and stop injecting row / col via a macro #17386

Closed
@thestinger

Description

@thestinger

The row and column aren't usually useful, because there's no context. An error pointing to unwrap is almost completely useless. On platforms where backtraces are already working, it should replace the current failure messages. Failure indicates a logic error (bug) and context is important for tracking it down.

An abort would be far more usable because it provides a whole core dump including a backtrace with all of the local variables.

Relocations from the bloated failure messages are the cause of over 50% of the time taken by rustc for hello world on Windows. It's much less ridiculous on other platforms, but the bloat is still a very serious performance issue in many performance critical parts of the standard libraries and in user code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-enhancementCategory: An issue proposing an enhancement or a PR with one.I-compiletimeIssue: Problems and improvements with respect to compile times.I-slowIssue: Problems and improvements with respect to performance of generated code.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions