On Tue, Sep 18, 2018 at 6:30 PM, <amand...@cohesity.com> wrote: > > Well, that is bad news. I am not sure what to do next either. I am setting > up another Solaris 10 machine from scratch and then re-run this to see if > this can be replicated. Will get back to you if I am able to replicate. > Should I file a big for this?
Sure. Thanks. But since it works on Solaris 11 it doesn't seem high priority. Ian > On Tuesday, September 18, 2018 at 7:45:06 AM UTC-7, Ian Lance Taylor wrote: >> >> Thanks for sending this. Unfortunately, I have no idea what is going >> wrong. Everything that you sent looks as expected. At this point I >> don't have any suggestions. >> >> Ian >> >> On Fri, Sep 14, 2018 at 6:42 PM, <aman...@cohesity.com> wrote: >> > Hi Ian, >> > I did you told, but I could not find --debug=all option for readelf. >> > However, there is --debug --all option with readelf. I am attaching the >> > output below: >> > >> > -bash-3.2$ /opt/csw/bin/greadelf --debug --all /b001/_cgo_.o >> > ELF Header: >> > Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00 >> > Class: ELF32 >> > Data: 2's complement, big endian >> > Version: 1 (current) >> > OS/ABI: UNIX - System V >> > ABI Version: 0 >> > Type: REL (Relocatable file) >> > Machine: Sparc >> > Version: 0x1 >> > Entry point address: 0x0 >> > Start of program headers: 0 (bytes into file) >> > Start of section headers: 2000 (bytes into file) >> > Flags: 0x0 >> > Size of this header: 52 (bytes) >> > Size of program headers: 0 (bytes) >> > Number of program headers: 0 >> > Size of section headers: 40 (bytes) >> > Number of section headers: 20 >> > Section header string table index: 17 >> > >> > Section Headers: >> > [Nr] Name Type Addr Off Size ES Flg >> > Lk >> > Inf Al >> > [ 0] NULL 00000000 000000 000000 00 >> > 0 >> > 0 0 >> > [ 1] .text PROGBITS 00000000 000034 000014 00 AX >> > 0 >> > 0 4 >> > [ 2] .rela.text RELA 00000000 000c4c 000024 0c >> > 18 >> > 1 4 >> > [ 3] .data PROGBITS 00000000 000048 000020 00 WA >> > 0 >> > 0 8 >> > [ 4] .bss NOBITS 00000000 000068 000000 00 WA >> > 0 >> > 0 1 >> > [ 5] .rodata.str1.8 PROGBITS 00000000 000068 000010 01 AMS >> > 0 >> > 0 8 >> > [ 6] .debug_frame PROGBITS 00000000 000078 000020 00 >> > 0 >> > 0 4 >> > [ 7] .rela.debug_frame RELA 00000000 000c70 000018 0c >> > 18 >> > 6 4 >> > [ 8] .debug_info PROGBITS 00000000 000098 000290 00 >> > 0 >> > 0 1 >> > [ 9] .rela.debug_info RELA 00000000 000c88 000240 0c >> > 18 >> > 8 4 >> > [10] .debug_abbrev PROGBITS 00000000 000328 00011d 00 >> > 0 >> > 0 1 >> > [11] .debug_aranges PROGBITS 00000000 000445 000020 00 >> > 0 >> > 0 1 >> > [12] .rela.debug_arang RELA 00000000 000ec8 000018 0c >> > 18 >> > 11 4 >> > [13] .debug_line PROGBITS 00000000 000465 000128 00 >> > 0 >> > 0 1 >> > [14] .rela.debug_line RELA 00000000 000ee0 00000c 0c >> > 18 >> > 13 4 >> > [15] .debug_str PROGBITS 00000000 00058d 00017c 01 MS >> > 0 >> > 0 1 >> > [16] .comment PROGBITS 00000000 000709 00001b 01 MS >> > 0 >> > 0 1 >> > [17] .shstrtab STRTAB 00000000 000724 0000aa 00 >> > 0 >> > 0 1 >> > [18] .symtab SYMTAB 00000000 000af0 000120 10 >> > 19 >> > 13 4 >> > [19] .strtab STRTAB 00000000 000c10 000039 00 >> > 0 >> > 0 1 >> > Key to Flags: >> > W (write), A (alloc), X (execute), M (merge), S (strings) >> > I (info), L (link order), G (group), T (TLS), E (exclude), x (unknown) >> > O (extra OS processing required) o (OS specific), p (processor >> > specific) >> > >> > There are no section groups in this file. >> > >> > There are no program headers in this file. >> > >> > Relocation section '.rela.text' at offset 0xc4c contains 3 entries: >> > Offset Info Type Sym.Value Sym. Name + Addend >> > 00000000 00000509 R_SPARC_HI22 00000000 .rodata.str1.8 + 0 >> > 00000004 0000050c R_SPARC_LO10 00000000 .rodata.str1.8 + 0 >> > 0000000c 00000e07 R_SPARC_WDISP30 00000000 printf + 0 >> > >> > Relocation section '.rela.debug_frame' at offset 0xc70 contains 2 >> > entries: >> > Offset Info Type Sym.Value Sym. Name + Addend >> > 00000014 00000617 R_SPARC_UA32 00000000 .debug_frame + 0 >> > 00000018 00000217 R_SPARC_UA32 00000000 .text + 0 >> > >> > Relocation section '.rela.debug_info' at offset 0xc88 contains 48 >> > entries: >> > Offset Info Type Sym.Value Sym. Name + Addend >> > 00000006 00000817 R_SPARC_UA32 00000000 .debug_abbrev + 0 >> > 0000000c 00000b17 R_SPARC_UA32 00000000 .debug_str + 45 >> > 00000011 00000b17 R_SPARC_UA32 00000000 .debug_str + 10b >> > 00000015 00000217 R_SPARC_UA32 00000000 .text + 0 >> > 00000019 00000217 R_SPARC_UA32 00000000 .text + 14 >> > 0000001d 00000a17 R_SPARC_UA32 00000000 .debug_line + 0 >> > 0000002b 00000b17 R_SPARC_UA32 00000000 .debug_str + e3 >> > 00000032 00000b17 R_SPARC_UA32 00000000 .debug_str + 13f >> > 00000039 00000b17 R_SPARC_UA32 00000000 .debug_str + 121 >> > 00000040 00000b17 R_SPARC_UA32 00000000 .debug_str + 14d >> > 00000047 00000b17 R_SPARC_UA32 00000000 .debug_str + 100 >> > 00000052 00000b17 R_SPARC_UA32 00000000 .debug_str + 1f >> > 0000005e 00000b17 R_SPARC_UA32 00000000 .debug_str + 1f >> > 0000006b 00000b17 R_SPARC_UA32 00000000 .debug_str + 148 >> > 0000007a 00000b17 R_SPARC_UA32 00000000 .debug_str + de >> > 00000089 00000b17 R_SPARC_UA32 00000000 .debug_str + 162 >> > 00000098 00000b17 R_SPARC_UA32 00000000 .debug_str + 2c >> > 000000a7 00000b17 R_SPARC_UA32 00000000 .debug_str + 105 >> > 000000b6 00000b17 R_SPARC_UA32 00000000 .debug_str + 88 >> > 000000c8 00000b17 R_SPARC_UA32 00000000 .debug_str + 96 >> > 000000da 00000b17 R_SPARC_UA32 00000000 .debug_str + bc >> > 000000ec 00000b17 R_SPARC_UA32 00000000 .debug_str + 0 >> > 000000fe 00000b17 R_SPARC_UA32 00000000 .debug_str + 168 >> > 00000110 00000b17 R_SPARC_UA32 00000000 .debug_str + f7 >> > 0000012b 00000b17 R_SPARC_UA32 00000000 .debug_str + ae >> > 00000130 00000b17 R_SPARC_UA32 00000000 .debug_str + 40 >> > 0000014c 00000b17 R_SPARC_UA32 00000000 .debug_str + 26 >> > 00000165 00000b17 R_SPARC_UA32 00000000 .debug_str + 175 >> > 00000173 00000b17 R_SPARC_UA32 00000000 .debug_str + 32 >> > 0000018c 00000b17 R_SPARC_UA32 00000000 .debug_str + 7d >> > 0000019a 00000b17 R_SPARC_UA32 00000000 .debug_str + 159 >> > 000001ae 00000b17 R_SPARC_UA32 00000000 .debug_str + f0 >> > 000001bd 00000b17 R_SPARC_UA32 00000000 .debug_str + a7 >> > 000001cc 00000b17 R_SPARC_UA32 00000000 .debug_str + 39 >> > 000001db 00000b17 R_SPARC_UA32 00000000 .debug_str + 76 >> > 000001f1 00000b17 R_SPARC_UA32 00000000 .debug_str + 136 >> > 000001ff 00001117 R_SPARC_UA32 00000004 __cgo__0 + 0 >> > 0000021a 00000b17 R_SPARC_UA32 00000000 .debug_str + ce >> > 00000228 00001017 R_SPARC_UA32 00000010 __cgodebug_ints + 0 >> > 0000023f 00000b17 R_SPARC_UA32 00000000 .debug_str + c7 >> > 00000244 00000b17 R_SPARC_UA32 00000000 .debug_str + d >> > 00000252 00000f17 R_SPARC_UA32 00000000 __cgodebug_floats + 0 >> > 00000258 00000b17 R_SPARC_UA32 00000000 .debug_str + a1 >> > 0000025f 00000217 R_SPARC_UA32 00000000 .text + 0 >> > 00000263 00000217 R_SPARC_UA32 00000000 .text + 14 >> > 00000270 00000217 R_SPARC_UA32 00000000 .text + 14 >> > 00000284 00000b17 R_SPARC_UA32 00000000 .debug_str + 12f >> > 00000288 00000b17 R_SPARC_UA32 00000000 .debug_str + 12f >> > >> > Relocation section '.rela.debug_aranges' at offset 0xec8 contains 2 >> > entries: >> > Offset Info Type Sym.Value Sym. Name + Addend >> > 00000006 00000717 R_SPARC_UA32 00000000 .debug_info + 0 >> > 00000010 00000217 R_SPARC_UA32 00000000 .text + 0 >> > >> > Relocation section '.rela.debug_line' at offset 0xee0 contains 1 >> > entries: >> > Offset Info Type Sym.Value Sym. Name + Addend >> > 0000011b 00000217 R_SPARC_UA32 00000000 .text + 0 >> > >> > The decoding of unwind sections for machine type Sparc is not currently >> > supported. >> > >> > Symbol table '.symtab' contains 18 entries: >> > Num: Value Size Type Bind Vis Ndx Name >> > 0: 00000000 0 NOTYPE LOCAL DEFAULT UND >> > 1: 00000000 0 FILE LOCAL DEFAULT ABS >> > 2: 00000000 0 SECTION LOCAL DEFAULT 1 >> > 3: 00000000 0 SECTION LOCAL DEFAULT 3 >> > 4: 00000000 0 SECTION LOCAL DEFAULT 4 >> > 5: 00000000 0 SECTION LOCAL DEFAULT 5 >> > 6: 00000000 0 SECTION LOCAL DEFAULT 6 >> > 7: 00000000 0 SECTION LOCAL DEFAULT 8 >> > 8: 00000000 0 SECTION LOCAL DEFAULT 10 >> > 9: 00000000 0 SECTION LOCAL DEFAULT 11 >> > 10: 00000000 0 SECTION LOCAL DEFAULT 13 >> > 11: 00000000 0 SECTION LOCAL DEFAULT 15 >> > 12: 00000000 0 SECTION LOCAL DEFAULT 16 >> > 13: 00000000 20 FUNC GLOBAL DEFAULT 1 testc >> > 14: 00000000 0 NOTYPE GLOBAL DEFAULT UND printf >> > 15: 00000000 16 OBJECT GLOBAL DEFAULT 3 __cgodebug_floats >> > 16: 00000010 16 OBJECT GLOBAL DEFAULT 3 __cgodebug_ints >> > 17: 00000004 4 OBJECT GLOBAL DEFAULT COM __cgo__0 >> > >> > No version information found in this file. >> > Contents of the .debug_frame section: >> > >> > 00000000 0000000c ffffffff CIE >> > Version: 1 >> > Augmentation: "" >> > Code alignment factor: 1 >> > Data alignment factor: -4 >> > Return address column: 15 >> > >> > DW_CFA_def_cfa: r14 ofs 0 >> > >> > 00000010 0000000c 00000000 FDE cie=00000000 pc=00000000..00000014 >> > >> > Contents of the .debug_info section: >> > >> > Compilation Unit @ offset 0x0: >> > Length: 0x28c (32-bit) >> > Version: 2 >> > Abbrev Offset: 0x0 >> > Pointer Size: 4 >> > <0><b>: Abbrev Number: 1 (DW_TAG_compile_unit) >> > <c> DW_AT_producer : (indirect string, offset: 0x45): GNU C17 >> > 8.2.1 >> > 20180814 -mcpu=v9 -gdwarf-2 -g -O2 >> > <10> DW_AT_language : 12 (ANSI C99) >> > <11> DW_AT_comp_dir : (indirect string, offset: 0x10b): >> > /export/home/amandeep >> > <15> DW_AT_low_pc : 0x0 >> > <19> DW_AT_high_pc : 0x14 >> > <1d> DW_AT_stmt_list : 0x0 >> > <1><21>: Abbrev Number: 2 (DW_TAG_base_type) >> > <22> DW_AT_byte_size : 4 >> > <23> DW_AT_encoding : 5 (signed) >> > <24> DW_AT_name : int >> > <1><28>: Abbrev Number: 3 (DW_TAG_base_type) >> > <29> DW_AT_byte_size : 4 >> > <2a> DW_AT_encoding : 7 (unsigned) >> > <2b> DW_AT_name : (indirect string, offset: 0xe3): unsigned >> > int >> > <1><2f>: Abbrev Number: 3 (DW_TAG_base_type) >> > <30> DW_AT_byte_size : 4 >> > <31> DW_AT_encoding : 5 (signed) >> > <32> DW_AT_name : (indirect string, offset: 0x13f): long >> > int >> > <1><36>: Abbrev Number: 3 (DW_TAG_base_type) >> > <37> DW_AT_byte_size : 8 >> > <38> DW_AT_encoding : 5 (signed) >> > <39> DW_AT_name : (indirect string, offset: 0x121): long >> > long >> > int >> > <1><3d>: Abbrev Number: 3 (DW_TAG_base_type) >> > <3e> DW_AT_byte_size : 16 >> > <3f> DW_AT_encoding : 4 (float) >> > <40> DW_AT_name : (indirect string, offset: 0x14d): long >> > double >> > <1><44>: Abbrev Number: 3 (DW_TAG_base_type) >> > <45> DW_AT_byte_size : 1 >> > <46> DW_AT_encoding : 6 (signed char) >> > <47> DW_AT_name : (indirect string, offset: 0x100): char >> > <1><4b>: Abbrev Number: 4 (DW_TAG_pointer_type) >> > <4c> DW_AT_byte_size : 4 >> > <4d> DW_AT_type : <0x44> >> > <1><51>: Abbrev Number: 5 (DW_TAG_typedef) >> > <52> DW_AT_name : (indirect string, offset: 0x1f): __FILE >> > <56> DW_AT_decl_file : 3 >> > <57> DW_AT_decl_line : 21 >> > <58> DW_AT_decl_column : 27 >> > <59> DW_AT_type : <0x5d> >> > <1><5d>: Abbrev Number: 6 (DW_TAG_structure_type) >> > <5e> DW_AT_name : (indirect string, offset: 0x1f): __FILE >> > <62> DW_AT_byte_size : 16 >> > <63> DW_AT_decl_file : 2 >> > <64> DW_AT_decl_line : 29 >> > <65> DW_AT_decl_column : 8 >> > <66> DW_AT_sibling : <0x122> >> > <2><6a>: Abbrev Number: 7 (DW_TAG_member) >> > <6b> DW_AT_name : (indirect string, offset: 0x148): _cnt >> > <6f> DW_AT_decl_file : 2 >> > <70> DW_AT_decl_line : 35 >> > <71> DW_AT_decl_column : 7 >> > <72> DW_AT_type : <0x21> >> > <76> DW_AT_data_member_location: 2 byte block: 23 0 >> > (DW_OP_plus_uconst: 0) >> > <2><79>: Abbrev Number: 7 (DW_TAG_member) >> > <7a> DW_AT_name : (indirect string, offset: 0xde): _ptr >> > <7e> DW_AT_decl_file : 2 >> > <7f> DW_AT_decl_line : 36 >> > <80> DW_AT_decl_column : 17 >> > <81> DW_AT_type : <0x122> >> > <85> DW_AT_data_member_location: 2 byte block: 23 4 >> > (DW_OP_plus_uconst: 4) >> > <2><88>: Abbrev Number: 7 (DW_TAG_member) >> > <89> DW_AT_name : (indirect string, offset: 0x162): _base >> > <8d> DW_AT_decl_file : 2 >> > <8e> DW_AT_decl_line : 38 >> > <8f> DW_AT_decl_column : 17 >> > <90> DW_AT_type : <0x122> >> > <94> DW_AT_data_member_location: 2 byte block: 23 8 >> > (DW_OP_plus_uconst: 8) >> > <2><97>: Abbrev Number: 7 (DW_TAG_member) >> > <98> DW_AT_name : (indirect string, offset: 0x2c): _flag >> > <9c> DW_AT_decl_file : 2 >> > <9d> DW_AT_decl_line : 39 >> > <9e> DW_AT_decl_column : 16 >> > <9f> DW_AT_type : <0x128> >> > <a3> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><a6>: Abbrev Number: 7 (DW_TAG_member) >> > <a7> DW_AT_name : (indirect string, offset: 0x105): _file >> > <ab> DW_AT_decl_file : 2 >> > <ac> DW_AT_decl_line : 40 >> > <ad> DW_AT_decl_column : 16 >> > <ae> DW_AT_type : <0x128> >> > <b2> DW_AT_data_member_location: 2 byte block: 23 d >> > (DW_OP_plus_uconst: 13) >> > <2><b5>: Abbrev Number: 8 (DW_TAG_member) >> > <b6> DW_AT_name : (indirect string, offset: 0x88): >> > __orientation >> > <ba> DW_AT_decl_file : 2 >> > <bb> DW_AT_decl_line : 42 >> > <bc> DW_AT_decl_column : 11 >> > <bd> DW_AT_type : <0x28> >> > <c1> DW_AT_byte_size : 4 >> > <c2> DW_AT_bit_size : 2 >> > <c3> DW_AT_bit_offset : 16 >> > <c4> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><c7>: Abbrev Number: 8 (DW_TAG_member) >> > <c8> DW_AT_name : (indirect string, offset: 0x96): >> > __ionolock >> > <cc> DW_AT_decl_file : 2 >> > <cd> DW_AT_decl_line : 43 >> > <ce> DW_AT_decl_column : 11 >> > <cf> DW_AT_type : <0x28> >> > <d3> DW_AT_byte_size : 4 >> > <d4> DW_AT_bit_size : 1 >> > <d5> DW_AT_bit_offset : 18 >> > <d6> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><d9>: Abbrev Number: 8 (DW_TAG_member) >> > <da> DW_AT_name : (indirect string, offset: 0xbc): >> > __seekable >> > <de> DW_AT_decl_file : 2 >> > <df> DW_AT_decl_line : 44 >> > <e0> DW_AT_decl_column : 11 >> > <e1> DW_AT_type : <0x28> >> > <e5> DW_AT_byte_size : 4 >> > <e6> DW_AT_bit_size : 1 >> > <e7> DW_AT_bit_offset : 19 >> > <e8> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><eb>: Abbrev Number: 8 (DW_TAG_member) >> > <ec> DW_AT_name : (indirect string, offset: 0x0): >> > __extendedfd >> > <f0> DW_AT_decl_file : 2 >> > <f1> DW_AT_decl_line : 45 >> > <f2> DW_AT_decl_column : 11 >> > <f3> DW_AT_type : <0x28> >> > <f7> DW_AT_byte_size : 4 >> > <f8> DW_AT_bit_size : 1 >> > <f9> DW_AT_bit_offset : 20 >> > <fa> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><fd>: Abbrev Number: 8 (DW_TAG_member) >> > <fe> DW_AT_name : (indirect string, offset: 0x168): >> > __xf_nocheck >> > <102> DW_AT_decl_file : 2 >> > <103> DW_AT_decl_line : 46 >> > <104> DW_AT_decl_column : 11 >> > <105> DW_AT_type : <0x28> >> > <109> DW_AT_byte_size : 4 >> > <10a> DW_AT_bit_size : 1 >> > <10b> DW_AT_bit_offset : 21 >> > <10c> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><10f>: Abbrev Number: 8 (DW_TAG_member) >> > <110> DW_AT_name : (indirect string, offset: 0xf7): >> > __filler >> > <114> DW_AT_decl_file : 2 >> > <115> DW_AT_decl_line : 47 >> > <116> DW_AT_decl_column : 11 >> > <117> DW_AT_type : <0x28> >> > <11b> DW_AT_byte_size : 4 >> > <11c> DW_AT_bit_size : 10 >> > <11d> DW_AT_bit_offset : 22 >> > <11e> DW_AT_data_member_location: 2 byte block: 23 c >> > (DW_OP_plus_uconst: 12) >> > <2><121>: Abbrev Number: 0 >> > <1><122>: Abbrev Number: 4 (DW_TAG_pointer_type) >> > <123> DW_AT_byte_size : 4 >> > <124> DW_AT_type : <0x128> >> > <1><128>: Abbrev Number: 3 (DW_TAG_base_type) >> > <129> DW_AT_byte_size : 1 >> > <12a> DW_AT_encoding : 8 (unsigned char) >> > <12b> DW_AT_name : (indirect string, offset: 0xae): >> > unsigned >> > char >> > <1><12f>: Abbrev Number: 5 (DW_TAG_typedef) >> > <130> DW_AT_name : (indirect string, offset: 0x40): FILE >> > <134> DW_AT_decl_file : 4 >> > <135> DW_AT_decl_line : 83 >> > <136> DW_AT_decl_column : 16 >> > <137> DW_AT_type : <0x51> >> > <1><13b>: Abbrev Number: 9 (DW_TAG_array_type) >> > <13c> DW_AT_type : <0x51> >> > <140> DW_AT_sibling : <0x14b> >> > <2><144>: Abbrev Number: 10 (DW_TAG_subrange_type) >> > <145> DW_AT_type : <0x28> >> > <149> DW_AT_upper_bound : 19 >> > <2><14a>: Abbrev Number: 0 >> > <1><14b>: Abbrev Number: 11 (DW_TAG_variable) >> > <14c> DW_AT_name : (indirect string, offset: 0x26): __iob >> > <150> DW_AT_decl_file : 4 >> > <151> DW_AT_decl_line : 155 >> > <152> DW_AT_decl_column : 15 >> > <153> DW_AT_type : <0x13b> >> > <157> DW_AT_external : 1 >> > <158> DW_AT_declaration : 1 >> > <1><159>: Abbrev Number: 9 (DW_TAG_array_type) >> > <15a> DW_AT_type : <0x128> >> > <15e> DW_AT_sibling : <0x164> >> > <2><162>: Abbrev Number: 12 (DW_TAG_subrange_type) >> > <2><163>: Abbrev Number: 0 >> > <1><164>: Abbrev Number: 11 (DW_TAG_variable) >> > <165> DW_AT_name : (indirect string, offset: 0x175): _sibuf >> > <169> DW_AT_decl_file : 5 >> > <16a> DW_AT_decl_line : 208 >> > <16b> DW_AT_decl_column : 23 >> > <16c> DW_AT_type : <0x159> >> > <170> DW_AT_external : 1 >> > <171> DW_AT_declaration : 1 >> > <1><172>: Abbrev Number: 11 (DW_TAG_variable) >> > <173> DW_AT_name : (indirect string, offset: 0x32): _sobuf >> > <177> DW_AT_decl_file : 5 >> > <178> DW_AT_decl_line : 208 >> > <179> DW_AT_decl_column : 33 >> > <17a> DW_AT_type : <0x159> >> > <17e> DW_AT_external : 1 >> > <17f> DW_AT_declaration : 1 >> > <1><180>: Abbrev Number: 9 (DW_TAG_array_type) >> > <181> DW_AT_type : <0x122> >> > <185> DW_AT_sibling : <0x18b> >> > <2><189>: Abbrev Number: 12 (DW_TAG_subrange_type) >> > <2><18a>: Abbrev Number: 0 >> > <1><18b>: Abbrev Number: 11 (DW_TAG_variable) >> > <18c> DW_AT_name : (indirect string, offset: 0x7d): >> > _bufendtab >> > <190> DW_AT_decl_file : 5 >> > <191> DW_AT_decl_line : 240 >> > <192> DW_AT_decl_column : 23 >> > <193> DW_AT_type : <0x180> >> > <197> DW_AT_external : 1 >> > <198> DW_AT_declaration : 1 >> > <1><199>: Abbrev Number: 11 (DW_TAG_variable) >> > <19a> DW_AT_name : (indirect string, offset: 0x159): >> > _lastbuf >> > <19e> DW_AT_decl_file : 5 >> > <19f> DW_AT_decl_line : 241 >> > <1a0> DW_AT_decl_column : 15 >> > <1a1> DW_AT_type : <0x1a7> >> > <1a5> DW_AT_external : 1 >> > <1a6> DW_AT_declaration : 1 >> > <1><1a7>: Abbrev Number: 4 (DW_TAG_pointer_type) >> > <1a8> DW_AT_byte_size : 4 >> > <1a9> DW_AT_type : <0x12f> >> > <1><1ad>: Abbrev Number: 13 (DW_TAG_variable) >> > <1ae> DW_AT_name : (indirect string, offset: 0xf0): optarg >> > <1b2> DW_AT_decl_file : 5 >> > <1b3> DW_AT_decl_line : 320 >> > <1b5> DW_AT_decl_column : 14 >> > <1b6> DW_AT_type : <0x4b> >> > <1ba> DW_AT_external : 1 >> > <1bb> DW_AT_declaration : 1 >> > <1><1bc>: Abbrev Number: 13 (DW_TAG_variable) >> > <1bd> DW_AT_name : (indirect string, offset: 0xa7): optind >> > <1c1> DW_AT_decl_file : 5 >> > <1c2> DW_AT_decl_line : 321 >> > <1c4> DW_AT_decl_column : 12 >> > <1c5> DW_AT_type : <0x21> >> > <1c9> DW_AT_external : 1 >> > <1ca> DW_AT_declaration : 1 >> > <1><1cb>: Abbrev Number: 13 (DW_TAG_variable) >> > <1cc> DW_AT_name : (indirect string, offset: 0x39): opterr >> > <1d0> DW_AT_decl_file : 5 >> > <1d1> DW_AT_decl_line : 321 >> > <1d3> DW_AT_decl_column : 20 >> > <1d4> DW_AT_type : <0x21> >> > <1d8> DW_AT_external : 1 >> > <1d9> DW_AT_declaration : 1 >> > <1><1da>: Abbrev Number: 13 (DW_TAG_variable) >> > <1db> DW_AT_name : (indirect string, offset: 0x76): optopt >> > <1df> DW_AT_decl_file : 5 >> > <1e0> DW_AT_decl_line : 321 >> > <1e2> DW_AT_decl_column : 28 >> > <1e3> DW_AT_type : <0x21> >> > <1e7> DW_AT_external : 1 >> > <1e8> DW_AT_declaration : 1 >> > <1><1e9>: Abbrev Number: 14 (DW_TAG_subroutine_type) >> > <1ea> DW_AT_sibling : <0x1f0> >> > <2><1ee>: Abbrev Number: 15 (DW_TAG_unspecified_parameters) >> > <2><1ef>: Abbrev Number: 0 >> > <1><1f0>: Abbrev Number: 16 (DW_TAG_variable) >> > <1f1> DW_AT_name : (indirect string, offset: 0x136): >> > __cgo__0 >> > <1f5> DW_AT_decl_file : 6 >> > <1f6> DW_AT_decl_line : 1 >> > <1f7> DW_AT_decl_column : 20 >> > <1f8> DW_AT_type : <0x203> >> > <1fc> DW_AT_external : 1 >> > <1fd> DW_AT_location : 5 byte block: 3 0 0 0 4 >> > (DW_OP_addr: >> > 4) >> > <1><203>: Abbrev Number: 4 (DW_TAG_pointer_type) >> > <204> DW_AT_byte_size : 4 >> > <205> DW_AT_type : <0x1e9> >> > <1><209>: Abbrev Number: 9 (DW_TAG_array_type) >> > <20a> DW_AT_type : <0x36> >> > <20e> DW_AT_sibling : <0x219> >> > <2><212>: Abbrev Number: 10 (DW_TAG_subrange_type) >> > <213> DW_AT_type : <0x28> >> > <217> DW_AT_upper_bound : 1 >> > <2><218>: Abbrev Number: 0 >> > <1><219>: Abbrev Number: 16 (DW_TAG_variable) >> > <21a> DW_AT_name : (indirect string, offset: 0xce): >> > __cgodebug_ints >> > <21e> DW_AT_decl_file : 6 >> > <21f> DW_AT_decl_line : 2 >> > <220> DW_AT_decl_column : 11 >> > <221> DW_AT_type : <0x209> >> > <225> DW_AT_external : 1 >> > <226> DW_AT_location : 5 byte block: 3 0 0 0 10 >> > (DW_OP_addr: >> > 10) >> > <1><22c>: Abbrev Number: 9 (DW_TAG_array_type) >> > <22d> DW_AT_type : <0x23c> >> > <231> DW_AT_sibling : <0x23c> >> > <2><235>: Abbrev Number: 10 (DW_TAG_subrange_type) >> > <236> DW_AT_type : <0x28> >> > <23a> DW_AT_upper_bound : 1 >> > <2><23b>: Abbrev Number: 0 >> > <1><23c>: Abbrev Number: 3 (DW_TAG_base_type) >> > <23d> DW_AT_byte_size : 8 >> > <23e> DW_AT_encoding : 4 (float) >> > <23f> DW_AT_name : (indirect string, offset: 0xc7): double >> > <1><243>: Abbrev Number: 16 (DW_TAG_variable) >> > <244> DW_AT_name : (indirect string, offset: 0xd): >> > __cgodebug_floats >> > <248> DW_AT_decl_file : 6 >> > <249> DW_AT_decl_line : 6 >> > <24a> DW_AT_decl_column : 8 >> > <24b> DW_AT_type : <0x22c> >> > <24f> DW_AT_external : 1 >> > <250> DW_AT_location : 5 byte block: 3 0 0 0 0 >> > (DW_OP_addr: >> > 0) >> > <1><256>: Abbrev Number: 17 (DW_TAG_subprogram) >> > <257> DW_AT_external : 1 >> > <258> DW_AT_name : (indirect string, offset: 0xa1): testc >> > <25c> DW_AT_decl_file : 1 >> > <25d> DW_AT_decl_line : 6 >> > <25e> DW_AT_decl_column : 6 >> > <25f> DW_AT_low_pc : 0x0 >> > <263> DW_AT_high_pc : 0x14 >> > <267> DW_AT_frame_base : 2 byte block: 7e 0 (DW_OP_breg14 >> > (r14): >> > 0) >> > <26a> DW_AT_GNU_all_call_sites: 1 >> > <26b> DW_AT_sibling : <0x281> >> > <2><26f>: Abbrev Number: 18 (DW_TAG_GNU_call_site) >> > <270> DW_AT_low_pc : 0x14 >> > <274> DW_AT_GNU_tail_call: 1 >> > <275> DW_AT_abstract_origin: <0x281> >> > <3><279>: Abbrev Number: 19 (DW_TAG_GNU_call_site_parameter) >> > <27a> DW_AT_location : 1 byte block: 58 (DW_OP_reg8 >> > (r8)) >> > <27c> DW_AT_GNU_call_site_value: 2 byte block: 78 0 >> > (DW_OP_breg8 >> > (r8): 0) >> > <3><27f>: Abbrev Number: 0 >> > <2><280>: Abbrev Number: 0 >> > <1><281>: Abbrev Number: 20 (DW_TAG_subprogram) >> > <282> DW_AT_external : 1 >> > <283> DW_AT_declaration : 1 >> > <284> DW_AT_MIPS_linkage_name: (indirect string, offset: 0x12f): >> > printf >> > <288> DW_AT_name : (indirect string, offset: 0x12f): printf >> > <28c> DW_AT_decl_file : 4 >> > <28d> DW_AT_decl_line : 215 >> > <28e> DW_AT_decl_column : 12 >> > <1><28f>: Abbrev Number: 0 >> > >> > Contents of the .debug_abbrev section: >> > >> > Number TAG (0x0) >> > 1 DW_TAG_compile_unit [has children] >> > DW_AT_producer DW_FORM_strp >> > DW_AT_language DW_FORM_data1 >> > DW_AT_comp_dir DW_FORM_strp >> > DW_AT_low_pc DW_FORM_addr >> > DW_AT_high_pc DW_FORM_addr >> > DW_AT_stmt_list DW_FORM_data4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 2 DW_TAG_base_type [no children] >> > DW_AT_byte_size DW_FORM_data1 >> > DW_AT_encoding DW_FORM_data1 >> > DW_AT_name DW_FORM_string >> > DW_AT value: 0 DW_FORM value: 0 >> > 3 DW_TAG_base_type [no children] >> > DW_AT_byte_size DW_FORM_data1 >> > DW_AT_encoding DW_FORM_data1 >> > DW_AT_name DW_FORM_strp >> > DW_AT value: 0 DW_FORM value: 0 >> > 4 DW_TAG_pointer_type [no children] >> > DW_AT_byte_size DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 5 DW_TAG_typedef [no children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 6 DW_TAG_structure_type [has children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_byte_size DW_FORM_data1 >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_sibling DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 7 DW_TAG_member [no children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_data_member_location DW_FORM_block1 >> > DW_AT value: 0 DW_FORM value: 0 >> > 8 DW_TAG_member [no children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_byte_size DW_FORM_data1 >> > DW_AT_bit_size DW_FORM_data1 >> > DW_AT_bit_offset DW_FORM_data1 >> > DW_AT_data_member_location DW_FORM_block1 >> > DW_AT value: 0 DW_FORM value: 0 >> > 9 DW_TAG_array_type [has children] >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_sibling DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 10 DW_TAG_subrange_type [no children] >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_upper_bound DW_FORM_data1 >> > DW_AT value: 0 DW_FORM value: 0 >> > 11 DW_TAG_variable [no children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_external DW_FORM_flag >> > DW_AT_declaration DW_FORM_flag >> > DW_AT value: 0 DW_FORM value: 0 >> > 12 DW_TAG_subrange_type [no children] >> > DW_AT value: 0 DW_FORM value: 0 >> > 13 DW_TAG_variable [no children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data2 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_external DW_FORM_flag >> > DW_AT_declaration DW_FORM_flag >> > DW_AT value: 0 DW_FORM value: 0 >> > 14 DW_TAG_subroutine_type [has children] >> > DW_AT_sibling DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 15 DW_TAG_unspecified_parameters [no children] >> > DW_AT value: 0 DW_FORM value: 0 >> > 16 DW_TAG_variable [no children] >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_type DW_FORM_ref4 >> > DW_AT_external DW_FORM_flag >> > DW_AT_location DW_FORM_block1 >> > DW_AT value: 0 DW_FORM value: 0 >> > 17 DW_TAG_subprogram [has children] >> > DW_AT_external DW_FORM_flag >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT_low_pc DW_FORM_addr >> > DW_AT_high_pc DW_FORM_addr >> > DW_AT_frame_base DW_FORM_block1 >> > DW_AT_GNU_all_call_sites DW_FORM_flag >> > DW_AT_sibling DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 18 DW_TAG_GNU_call_site [has children] >> > DW_AT_low_pc DW_FORM_addr >> > DW_AT_GNU_tail_call DW_FORM_flag >> > DW_AT_abstract_origin DW_FORM_ref4 >> > DW_AT value: 0 DW_FORM value: 0 >> > 19 DW_TAG_GNU_call_site_parameter [no children] >> > DW_AT_location DW_FORM_block1 >> > DW_AT_GNU_call_site_value DW_FORM_block1 >> > DW_AT value: 0 DW_FORM value: 0 >> > 20 DW_TAG_subprogram [no children] >> > DW_AT_external DW_FORM_flag >> > DW_AT_declaration DW_FORM_flag >> > DW_AT_MIPS_linkage_name DW_FORM_strp >> > DW_AT_name DW_FORM_strp >> > DW_AT_decl_file DW_FORM_data1 >> > DW_AT_decl_line DW_FORM_data1 >> > DW_AT_decl_column DW_FORM_data1 >> > DW_AT value: 0 DW_FORM value: 0 >> > >> > Contents of the .debug_aranges section: >> > >> > Length: 28 >> > Version: 2 >> > Offset into .debug_info: 0x0 >> > Pointer Size: 4 >> > Segment Size: 0 >> > >> > Address Length >> > 00000000 00000014 >> > 00000000 00000000 >> > >> > Raw dump of debug contents of section .debug_line: >> > >> > Offset: 0x0 >> > Length: 292 >> > DWARF Version: 2 >> > Prologue Length: 268 >> > Minimum Instruction Length: 4 >> > Initial value of 'is_stmt': 1 >> > Line Base: -5 >> > Line Range: 14 >> > Opcode Base: 13 >> > >> > Opcodes: >> > Opcode 1 has 0 args >> > Opcode 2 has 1 args >> > Opcode 3 has 1 args >> > Opcode 4 has 1 args >> > Opcode 5 has 1 args >> > Opcode 6 has 0 args >> > Opcode 7 has 0 args >> > Opcode 8 has 0 args >> > Opcode 9 has 1 args >> > Opcode 10 has 0 args >> > Opcode 11 has 0 args >> > Opcode 12 has 1 args >> > >> > The Directory Table (offset 0x1b): >> > 1 /export/home/amandeep >> > 2 /usr/include >> > 3 /usr/gnu/lib/gcc/sparc-sun-solaris2.10/8.2.1/include-fixed/iso >> > 4 /usr/gnu/lib/gcc/sparc-sun-solaris2.10/8.2.1/include-fixed >> > >> > The File Name Table (offset 0xb9): >> > Entry Dir Time Size Name >> > 1 1 0 0 sol10.go >> > 2 2 0 0 stdio_impl.h >> > 3 2 0 0 stdio_tag.h >> > 4 3 0 0 stdio_iso.h >> > 5 4 0 0 stdio.h >> > 6 0 0 0 cgo-dwarf-inference >> > >> > Line Number Statements: >> > [0x00000116] Set column to 14 >> > [0x00000118] Extended opcode 2: set Address to 0x0 >> > [0x0000011f] Special opcode 10: advance Address by 0 to 0x0 and Line >> > by 5 >> > to 6 >> > [0x00000120] Set column to 5 >> > [0x00000122] Special opcode 6: advance Address by 0 to 0x0 and Line >> > by 1 >> > to 7 >> > [0x00000123] Advance PC by 20 to 0x14 >> > [0x00000125] Extended opcode 1: End of Sequence >> > >> > >> > Contents of the .debug_str section: >> > >> > 0x00000000 5f5f6578 74656e64 65646664 005f5f63 __extendedfd.__c >> > 0x00000010 676f6465 6275675f 666c6f61 7473005f godebug_floats._ >> > 0x00000020 5f46494c 45005f5f 696f6200 5f666c61 _FILE.__iob._fla >> > 0x00000030 67005f73 6f627566 006f7074 65727200 g._sobuf.opterr. >> > 0x00000040 46494c45 00474e55 20433137 20382e32 FILE.GNU C17 8.2 >> > 0x00000050 2e312032 30313830 38313420 2d6d6370 .1 20180814 -mcp >> > 0x00000060 753d7639 202d6764 77617266 2d32202d u=v9 -gdwarf-2 - >> > 0x00000070 67202d4f 32006f70 746f7074 005f6275 g -O2.optopt._bu >> > 0x00000080 66656e64 74616200 5f5f6f72 69656e74 fendtab.__orient >> > 0x00000090 6174696f 6e005f5f 696f6e6f 6c6f636b ation.__ionolock >> > 0x000000a0 00746573 7463006f 7074696e 6400756e .testc.optind.un >> > 0x000000b0 7369676e 65642063 68617200 5f5f7365 signed char.__se >> > 0x000000c0 656b6162 6c650064 6f75626c 65005f5f ekable.double.__ >> > 0x000000d0 63676f64 65627567 5f696e74 73005f70 cgodebug_ints._p >> > 0x000000e0 74720075 6e736967 6e656420 696e7400 tr.unsigned int. >> > 0x000000f0 6f707461 7267005f 5f66696c 6c657200 optarg.__filler. >> > 0x00000100 63686172 005f6669 6c65002f 6578706f char._file./expo >> > 0x00000110 72742f68 6f6d652f 616d616e 64656570 rt/home/amandeep >> > 0x00000120 006c6f6e 67206c6f 6e672069 6e740070 .long long int.p >> > 0x00000130 72696e74 66005f5f 63676f5f 5f30006c rintf.__cgo__0.l >> > 0x00000140 6f6e6720 696e7400 5f636e74 006c6f6e ong int._cnt.lon >> > 0x00000150 6720646f 75626c65 005f6c61 73746275 g double._lastbu >> > 0x00000160 66005f62 61736500 5f5f7866 5f6e6f63 f._base.__xf_noc >> > 0x00000170 6865636b 005f7369 62756600 heck._sibuf. >> > >> > >> > Also, looks like Solaris 11 is very different than Solaris 10. Please >> > see >> > the prompt below where "sol10.go" is the file from the first message: >> > >> > amandeep@s113ldom1:~$ go build -x sol10.go >> > WORK=/tmp/go-build038354192 >> > mkdir -p $WORK/b001/ >> > cat >$WORK/b001/importcfg.link << 'EOF' # internal >> > packagefile >> > >> > command-line-arguments=/home/amandeep/.cache/go-build/02/0272a12b534156aa38d92948433fc12ef8c60940db073e83182436827d642e97-d >> > EOF >> > mkdir -p $WORK/b001/exe/ >> > cp >> > >> > /home/amandeep/.cache/go-build/02/0272a12b534156aa38d92948433fc12ef8c60940db073e83182436827d642e97-d >> > $WORK/b001/_pkg1_.a >> > cd $WORK/b001/ >> > ar x ./_pkg1_.a _cgo_flags >> > cd . >> > ar d $WORK/b001/_pkg1_.a _cgo_flags >> > /usr/gnu/bin/gccgo -o $WORK/b001/exe/a.out "-Wl,-(" -Wl,--whole-archive >> > $WORK/b001/_pkg1_.a -Wl,--no-whole-archive "-Wl,-)" >> > /usr/gnu/libexec/gcc/sparc-sun-solaris2.11/8.2.1/buildid -w >> > $WORK/b001/exe/a.out # internal >> > cp $WORK/b001/exe/a.out sol10 >> > rm -r $WORK/b001/ >> > >> > >> > On Friday, September 14, 2018 at 2:52:21 PM UTC-7, Ian Lance Taylor >> > wrote: >> >> >> >> On Fri, Sep 14, 2018 at 2:16 PM, <aman...@cohesity.com> wrote: >> >> > It would be the same. Please see below. >> >> > >> >> > -bash-3.2$ gcc --version >> >> > gcc (GCC) 8.2.1 20180814 >> >> > Copyright (C) 2018 Free Software Foundation, Inc. >> >> > This is free software; see the source for copying conditions. There >> >> > is >> >> > NO >> >> > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR >> >> > PURPOSE. >> >> >> >> >> >> Hmmm, not sure what is happening. Especially not sure why it would >> >> fail on Solaris 10 but work on Solaris 11, as you suggested earlier. >> >> I have a feeling this is going to be some configuration error >> >> somewhere. >> >> >> >> I guess the next step in debugging would be to run this command, >> >> copied from your earlier message, and then look at x.o to see how >> >> __cgo__0 is defined in the debug info. If you have the readelf >> >> program from the GNU binutils you could run readelf --debug=all x.o. >> >> >> >> Ian >> >> >> >> >> >> gcc -w -Wno-error -o x.o -gdwarf-2 -c -xc -I /b001/ -g -O2 - <<EOF >> >> >> >> #line 1 "cgo-builtin-prolog" >> >> #include <stddef.h> /* for ptrdiff_t and size_t below */ >> >> >> >> /* Define intgo when compiling with GCC. */ >> >> typedef ptrdiff_t intgo; >> >> >> >> typedef struct { const char *p; intgo n; } _GoString_; >> >> typedef struct { char *p; intgo n; intgo c; } _GoBytes_; >> >> _GoString_ GoString(char *p); >> >> _GoString_ GoStringN(char *p, int l); >> >> _GoBytes_ GoBytes(void *p, int n); >> >> char *CString(_GoString_); >> >> void *CBytes(_GoBytes_); >> >> void *_CMalloc(size_t); >> >> >> >> __attribute__ ((unused)) >> >> static size_t _GoStringLen(_GoString_ s) { return s.n; } >> >> >> >> __attribute__ ((unused)) >> >> static const char *_GoStringPtr(_GoString_ s) { return s.p; } >> >> #line 3 "/export/home/amandeep/sol10.go" >> >> >> >> #include <stdio.h> >> >> >> >> void testc() { >> >> printf("Hello cgo"); >> >> } >> >> >> >> #line 1 "cgo-generated-wrapper" >> >> #line 1 "cgo-dwarf-inference" >> >> __typeof__(testc) *__cgo__0; >> >> long long __cgodebug_ints[] = { >> >> 0, >> >> 1 >> >> }; >> >> double __cgodebug_floats[] = { >> >> 0, >> >> 1 >> >> }; >> >> EOF >> > >> > -- >> > You received this message because you are subscribed to the Google >> > Groups >> > "golang-nuts" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> > an >> > email to golang-nuts...@googlegroups.com. >> > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.