From: "Tim Van Holder" To: Subject: RE: Backslashes in debug info Date: Sun, 7 Jan 2001 10:54:45 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) In-reply-to: Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id EAA11174 Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > ? If so, then isn't it better to convert all backslashes to forward > slashes in debug info? I think GDB might puke on backslashes, because > the format spec for debug info calls for forward slashes. You're probably right. As you can see below, all references, except the .file directive are already slash-flipped. I'm pretty sure gdb currently handles this correctly (though that may be something I patched in mine). == spawnv.s, resulting from gcc -gstabs+3 -S .file "H:\\Tmp\\Source\\djgpp-cvs\\src\\libc\\dos\\process\\spawnv.c" gcc2_compiled.: ___gnu_compiled_c: .stabs "h:/Tmp/Source/djgpp-cvs/src/libc/dos/process/",100,0,0,Ltext0 .stabs "H:\\Tmp\\Source\\djgpp-cvs\\src\\libc\\dos\\process\\spawnv.c",100,0,0,Ltext0 .text Ltext0: .stabs "int:t(0,1)=r(0,1);0020000000000;0017777777777;",128,0,0,0 .stabs "char:t(0,2)=r(0,2);0;127;",128,0,0,0 .stabs "long int:t(0,3)=r(0,1);0020000000000;0017777777777;",128,0,0,0 .stabs "unsigned int:t(0,4)=r(0,1);0000000000000;0037777777777;",128,0,0,0 .stabs "long unsigned int:t(0,5)=r(0,1);0000000000000;0037777777777;",128,0,0,0 .stabs "long long int:t(0,6)=r(0,1);01000000000000000000000;0777777777777777777777;",128,0,0,0 .stabs "long long unsigned int:t(0,7)=r(0,1);0000000000000;01777777777777777777777;",128,0,0,0 .stabs "short int:t(0,8)=r(0,8);-32768;32767;",128,0,0,0 .stabs "short unsigned int:t(0,9)=r(0,9);0;65535;",128,0,0,0 .stabs "signed char:t(0,10)=r(0,10);-128;127;",128,0,0,0 .stabs "unsigned char:t(0,11)=r(0,11);0;255;",128,0,0,0 .stabs "float:t(0,12)=r(0,1);4;0;",128,0,0,0 .stabs "double:t(0,13)=r(0,1);8;0;",128,0,0,0 .stabs "long double:t(0,14)=r(0,1);12;0;",128,0,0,0 .stabs "complex int:t(0,15)=s8real:(0,1),0,32;imag:(0,1),32,32;;",128,0,0,0 .stabs "complex float:t(0,16)=r(0,16);4;0;",128,0,0,0 .stabs "complex double:t(0,17)=r(0,17);8;0;",128,0,0,0 .stabs "complex long double:t(0,18)=r(0,18);12;0;",128,0,0,0 .stabs "void:t(0,19)=(0,19)",128,0,0,0 .stabs "G:/Djgpp/include/libc/stubs.h",130,0,0,0 .stabn 162,0,0,0 .stabs "G:/Djgpp/include/process.h",130,0,0,0 .stabn 162,0,0,0 .p2align 2 .stabs "spawnv:F(0,1)",36,0,8,_spawnv .stabs "mode:p(0,1)",160,0,7,8 .stabs "path:p(0,20)=*(0,2)",160,0,7,12 .stabs "argv:p(0,21)=*(0,22)=*(0,2)",160,0,7,16 .globl _spawnv _spawnv: .stabn 68,0,8,LM1-_spawnv LM1: pushl %ebp movl %esp,%ebp subl $8,%esp .stabn 68,0,9,LM2-_spawnv LM2: movl _environ,%eax pushl %eax movl 16(%ebp),%eax pushl %eax movl 12(%ebp),%eax pushl %eax movl 8(%ebp),%eax pushl %eax call ___spawnve addl $16,%esp movl %eax,%edx movl %edx,%eax jmp L2 .stabn 68,0,10,LM3-_spawnv LM3: .p2align 2 L2: leave ret Lscope0: .stabs "",36,0,0,Lscope0-_spawnv .text .stabs "",100,0,0,Letext Letext: == end of spawnv.s