Under what circumstances would it be advantageous to provide a “core dump” instead of just a regular “debug report” when there is an application crash?
There is no diference between this reports, all of it can add into the bug tracker. You can add the output of the debugger on the report too.
The core dump is much larger and contains the full state of the application. It allows developers to examine things in a deeper way.
However, this is not that much useful if the software is built without debug information, because in that case all you can see is the assembler code (no C++ sources, no variables, etc).
In general, submit just the debug report, especially if the issue is reproductible. Developers can request a core dump for an issue you can reproduce, and they can’t.