Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
Delve is a debugger for the Go programming language.
Go C Other
Branch: master
Clone or download
aarzilli and derekparker cmd/dlv: actually disable C compiler optimizations when building (#1647)
* proc: fix stacktraces when a SIGSEGV happens during a cgo call

When a SIGSEGV happens in a cgo call (for example as a result of
dereferencing a NULL pointer) the stack layout will look like this:

(system stack) runtime.fatalthrow
(system stack) runtime.throw
(system stack) runtime.sigpanic
(system stack) offending C function
... other C functions...
(system stack) runtime.asmcgocall
(goroutine stack) call inside cgo

The code in switchStack would switch directly from the
runtime.fatalthrow frame to the first frame in the goroutine stack,
hiding important information.

Disable this switch for runtime.fatalthrow and reintroduce the check
for runtime.mstart that existed before this version of the code was
implemented in commit 7bec20.

This problem was reported in comment:
#935 (comment)

* cmd/dlv: actually disable C compiler optimizations when building
Latest commit c9c455c Aug 2, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Documentation Documentation,cmd/dlv: tidy up --help output (#1649) Aug 1, 2019
_fixtures cmd/dlv: actually disable C compiler optimizations when building (#1647) Aug 1, 2019
assets Add high-res images May 19, 2015
cmd/dlv cmd/dlv: actually disable C compiler optimizations when building (#1647) Aug 1, 2019
pkg cmd/dlv: actually disable C compiler optimizations when building (#1647) Aug 1, 2019
scripts Documentation,cmd/dlv: tidy up --help output (#1649) Aug 1, 2019
service *: Add .cirrus.yml for FreeBSD testing (#1639) Jul 30, 2019
vendor *: Add .cirrus.yml for FreeBSD testing (#1639) Jul 30, 2019
.cirrus.yml *: Add .cirrus.yml for FreeBSD testing (#1639) Jul 30, 2019
.gitattributes makefile: use git's $Id$ instead of setting ver.Build in makefile (#807) Apr 28, 2017
.gitignore git: Update gitignore Oct 21, 2015
.travis.yml travis-ci: fix dwz test problems (#1648) Jul 31, 2019
CHANGELOG.md Set release date for 1.2.0 Feb 19, 2019
CONTRIBUTING.md Update CONTRIBUTING.md May 13, 2016
ISSUE_TEMPLATE.md misc: Include issue template for GitHub Mar 3, 2016
LICENSE Add License and README May 3, 2014
Makefile Makefile: replace makefile with a script Sep 18, 2018
README.md Documentation: add Frequently Asked Questions. (#1567) Jun 3, 2019
appveyor.yml *: Missed go-delve renames Jan 4, 2019
go.mod *: Add .cirrus.yml for FreeBSD testing (#1639) Jul 30, 2019
go.sum *: Add .cirrus.yml for FreeBSD testing (#1639) Jul 30, 2019

README.md

Delve

license GoDoc Build Status Build status Join the chat at https://gitter.im/go-delve/delve

The GitHub issue tracker is for bugs only. Please use the developer mailing list for any feature proposals and discussions.

About Delve

Delve is a debugger for the Go programming language. The goal of the project is to provide a simple, full featured debugging tool for Go. Delve should be easy to invoke and easy to use. Chances are if you're using a debugger, things aren't going your way. With that in mind, Delve should stay out of your way as much as possible.

You can’t perform that action at this time.