public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug go/68072] New: malformed DWARF TagVariable entry
@ 2015-10-23 17:25 vogt at linux dot vnet.ibm.com
  2015-10-26 15:40 ` [Bug go/68072] " vogt at linux dot vnet.ibm.com
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: vogt at linux dot vnet.ibm.com @ 2015-10-23 17:25 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68072

            Bug ID: 68072
           Summary: malformed DWARF TagVariable entry
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: go
          Assignee: ian at airs dot com
          Reporter: vogt at linux dot vnet.ibm.com
                CC: cmang at google dot com
  Target Milestone: ---
              Host: s390x
            Target: s390x
             Build: s390x

Compiling the package crypto/secp256k1 from the go-ethereum package yields the
error message "malformed DWARF TagVariable entry" from cgo.  Maybe it does not
yet know about the latest changes to debug information in Gcc?

I know this report is very terse; if a code example is necessary to debug or
fix this issue, just give me a shout and I'll see what I can do next week.

(Gcc sources checked out at 25th of Septermber, 2015.)


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/68072] malformed DWARF TagVariable entry
  2015-10-23 17:25 [Bug go/68072] New: malformed DWARF TagVariable entry vogt at linux dot vnet.ibm.com
@ 2015-10-26 15:40 ` vogt at linux dot vnet.ibm.com
  2015-10-26 15:56 ` ian at airs dot com
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: vogt at linux dot vnet.ibm.com @ 2015-10-26 15:40 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68072

--- Comment #1 from Dominik Vogt <vogt at linux dot vnet.ibm.com> ---
It seems that the DWARF library is unable to handle DW_AT_specification:

-- snip --
 <1><7b4>: Abbrev Number: 27 (DW_TAG_variable)
    <7b5>   DW_AT_specification: <0x8b>
    <7b9>   DW_AT_decl_file   : 13
    <7ba>   DW_AT_decl_line   : 77
    <7bb>   DW_AT_location    : 9 byte block: 3 0 0 0 0 0 0 4 80   
(DW_OP_addr: 480)


 <1><8b>: Abbrev Number: 10 (DW_TAG_variable)
    <8c>   DW_AT_name        : (indirect string, offset: 0x3c4):
secp256k1_nonce_function_rfc6979
    <90>   DW_AT_decl_file   : 14
    <91>   DW_AT_decl_line   : 104
    <92>   DW_AT_type        : <0x98>
    <96>   DW_AT_external    : 1
    <97>   DW_AT_declaration : 1
-- snip --

DW_AT_name and DW_AT_type are provided by the DW_TAG_variable that the
DW_AT_specification attribute is pointing to.  Is that a known problem; ist
there already a fix?  Otherwise I can try to make a patch.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/68072] malformed DWARF TagVariable entry
  2015-10-23 17:25 [Bug go/68072] New: malformed DWARF TagVariable entry vogt at linux dot vnet.ibm.com
  2015-10-26 15:40 ` [Bug go/68072] " vogt at linux dot vnet.ibm.com
@ 2015-10-26 15:56 ` ian at airs dot com
  2015-10-26 16:06 ` vogt at linux dot vnet.ibm.com
  2015-10-26 16:11 ` vogt at linux dot vnet.ibm.com
  3 siblings, 0 replies; 5+ messages in thread
From: ian at airs dot com @ 2015-10-26 15:56 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68072

--- Comment #2 from Ian Lance Taylor <ian at airs dot com> ---
This is not a known bug.  I wonder what is special about this package that it
causes it to happen?  I don't see anything new in GCC related to
DW_AT_specification.

I think the place to fix in the Go sources would be cmd/cgo/gcc.go.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/68072] malformed DWARF TagVariable entry
  2015-10-23 17:25 [Bug go/68072] New: malformed DWARF TagVariable entry vogt at linux dot vnet.ibm.com
  2015-10-26 15:40 ` [Bug go/68072] " vogt at linux dot vnet.ibm.com
  2015-10-26 15:56 ` ian at airs dot com
@ 2015-10-26 16:06 ` vogt at linux dot vnet.ibm.com
  2015-10-26 16:11 ` vogt at linux dot vnet.ibm.com
  3 siblings, 0 replies; 5+ messages in thread
From: vogt at linux dot vnet.ibm.com @ 2015-10-26 16:06 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68072

--- Comment #3 from Dominik Vogt <vogt at linux dot vnet.ibm.com> ---
Created attachment 36588
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=36588&action=edit
Experimental fix

The attached patch fixes the problem for us by skipping DW_TAG_variable DWARF
info that only contains a DW_AT_specification (no DW_AT_type and DW_AT_name),
assuming that they are just duplicate declarations/definitions.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/68072] malformed DWARF TagVariable entry
  2015-10-23 17:25 [Bug go/68072] New: malformed DWARF TagVariable entry vogt at linux dot vnet.ibm.com
                   ` (2 preceding siblings ...)
  2015-10-26 16:06 ` vogt at linux dot vnet.ibm.com
@ 2015-10-26 16:11 ` vogt at linux dot vnet.ibm.com
  3 siblings, 0 replies; 5+ messages in thread
From: vogt at linux dot vnet.ibm.com @ 2015-10-26 16:11 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68072

--- Comment #4 from Dominik Vogt <vogt at linux dot vnet.ibm.com> ---
@comment 2

I can't see anything special that the file does:

-- secp256.go --
package secp256k1

/*
#cgo CFLAGS: -I./secp256k1
...
#include "./secp256k1/src/secp256k1.c"
*/
import "C"
-- END --

Then in

-- secp256k1.c --
const secp256k1_nonce_function_t secp256k1_nonce_function_rfc6979 =
nonce_function_rfc6979;
-- END --

Just this one occurence of the symbol "secp256k1_nonce_function_rfc6979".


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-10-26 16:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-23 17:25 [Bug go/68072] New: malformed DWARF TagVariable entry vogt at linux dot vnet.ibm.com
2015-10-26 15:40 ` [Bug go/68072] " vogt at linux dot vnet.ibm.com
2015-10-26 15:56 ` ian at airs dot com
2015-10-26 16:06 ` vogt at linux dot vnet.ibm.com
2015-10-26 16:11 ` vogt at linux dot vnet.ibm.com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).