[MacPorts] #49764: babl @0.1.14 falls back to clang-3.4 which is not functional on PPC platforms

MacPorts noreply at macports.org
Mon Oct 31 06:10:46 CET 2016


#49764: babl @0.1.14 falls back to clang-3.4 which is not functional on PPC
platforms
--------------------------+----------------------
  Reporter:  udbraumann   |      Owner:  dbevans
      Type:  enhancement  |     Status:  assigned
  Priority:  Normal       |  Milestone:
 Component:  ports        |    Version:
Resolution:               |   Keywords:  powerpc
      Port:  clang34      |
--------------------------+----------------------

Comment (by ken-cunningham-webuse):

 and here's the full set of frame variables just prior to the step that
 generates the BAD_ACCESS error.
 {{{
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2ca
 libmacho.1.dylib`getsectiondata + 36 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2ca libmacho.1.dylib`getsectiondata + 36 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) frame variable sgp->cmd
 (uint32_t) sgp->cmd = <Parent failed to evaluate: variable not available.
 >
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2ce
 libmacho.1.dylib`getsectiondata + 40 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2ce libmacho.1.dylib`getsectiondata + 40 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) frame variable sgp->cmd
 (uint32_t) sgp->cmd = <Parent failed to evaluate: variable not available.
 >
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2d2
 libmacho.1.dylib`getsectiondata + 44 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2d2 libmacho.1.dylib`getsectiondata + 44 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2d5
 libmacho.1.dylib`getsectiondata + 47 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2d5 libmacho.1.dylib`getsectiondata + 47 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2d8
 libmacho.1.dylib`getsectiondata + 50 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2d8 libmacho.1.dylib`getsectiondata + 50 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2dd
 libmacho.1.dylib`getsectiondata + 55 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2dd libmacho.1.dylib`getsectiondata + 55 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2e3
 libmacho.1.dylib`getsectiondata + 61 at getsecbyname.c:412, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2e3 libmacho.1.dylib`getsectiondata + 61 at
 getsecbyname.c:412
    409          slide = 0;
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
 -> 412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2e7
 libmacho.1.dylib`getsectiondata + 65 at getsecbyname.c:412, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2e7 libmacho.1.dylib`getsectiondata + 65 at
 getsecbyname.c:412
    409          slide = 0;
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
 -> 412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
 (lldb) frame variable sgp->cmd
 (uint32_t) sgp->cmd = 1166624768
 (lldb) frame variable sgp->cmd --format string
 Invalid format character or name 'string'. Valid values are:
 "default"
 'B' or "boolean"
 'b' or "binary"
 'y' or "bytes"
 'Y' or "bytes with ASCII"
 'c' or "character"
 'C' or "printable character"
 'F' or "complex float"
 's' or "c-string"
 'i' or "signed decimal"
 'E' or "enumeration"
 'x' or "hex"
 'f' or "float"
 'o' or "octal"
 'O' or "OSType"
 'U' or "unicode16"
 "unicode32"
 'u' or "unsigned decimal"
 'p' or "pointer"
 "char[]"
 "int8_t[]"
 "uint8_t[]"
 "int16_t[]"
 "uint16_t[]"
 "int32_t[]"
 "uint32_t[]"
 "int64_t[]"
 "uint64_t[]"
 "float32[]"
 "float64[]"
 "uint128_t[]"
 'I' or "complex integer"
 'a' or "character array"
 (lldb) frame variable sgp->cmd --format s
 (uint32_t) sgp->cmd = ""
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2e9
 libmacho.1.dylib`getsectiondata + 67 at getsecbyname.c:412, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2e9 libmacho.1.dylib`getsectiondata + 67 at
 getsecbyname.c:412
    409          slide = 0;
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
 -> 412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
 (lldb) frame variable sgp->cmd --format s
 (uint32_t) sgp->cmd = ""
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2ed
 libmacho.1.dylib`getsectiondata + 71 at getsecbyname.c:414, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2ed libmacho.1.dylib`getsectiondata + 71 at
 getsecbyname.c:414
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
 -> 414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
    417                  }
 (lldb) frame variable sgp->cmd --format s
 (uint32_t) sgp->cmd = <Parent failed to evaluate: variable not available.
 >
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2f1
 libmacho.1.dylib`getsectiondata + 75 at getsecbyname.c:414, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2f1 libmacho.1.dylib`getsectiondata + 75 at
 getsecbyname.c:414
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
 -> 414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
    417                  }
 (lldb) frame variable sgp->cmd --format s
 (uint32_t) sgp->cmd = <Parent failed to evaluate: variable not available.
 >
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac37c
 libmacho.1.dylib`getsectiondata + 214 at getsecbyname.c:434, stop reason =
 instruction step into
     frame #0: 0x00000001001ac37c libmacho.1.dylib`getsectiondata + 214 at
 getsecbyname.c:434
    431                      }
    432                  }
    433              }
 -> 434              sgp = (struct segment_command_64 *)((char *)sgp +
 sgp->cmdsize);
    435          }
    436          return(0);
    437  }
 (lldb) frame variable sgp->cmd --format s
 (uint32_t) sgp->cmd = <Parent failed to evaluate: variable not available.
 >
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac380
 libmacho.1.dylib`getsectiondata + 218 at getsecbyname.c:434, stop reason =
 instruction step into
     frame #0: 0x00000001001ac380 libmacho.1.dylib`getsectiondata + 218 at
 getsecbyname.c:434
    431                      }
    432                  }
    433              }
 -> 434              sgp = (struct segment_command_64 *)((char *)sgp +
 sgp->cmdsize);
    435          }
    436          return(0);
    437  }
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac383
 libmacho.1.dylib`getsectiondata + 221 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac383 libmacho.1.dylib`getsectiondata + 221 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) frame variable
 (const struct mach_header_64 *) mhp = 0x000000010000d610
 (const char *) segname = 0x000000010000fcd1 "__TEXT"
 (const char *) sectname = 0x000000010000fcd8 "__eh_frame"
 (unsigned long *) size = 0x00007fff5fbfecc8
 (uint32_t) i = 0
 (intptr_t) slide = 0
 (segment_command_64 *) sgp = <variable not available>
 (uint32_t) j = <variable not available>
 (section_64 *) sp = <variable not available>
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac386
 libmacho.1.dylib`getsectiondata + 224 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac386 libmacho.1.dylib`getsectiondata + 224 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac389
 libmacho.1.dylib`getsectiondata + 227 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac389 libmacho.1.dylib`getsectiondata + 227 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac38e
 libmacho.1.dylib`getsectiondata + 232 at getsecbyname.c:413, stop reason =
 instruction step into
     frame #0: 0x00000001001ac38e libmacho.1.dylib`getsectiondata + 232 at
 getsecbyname.c:413
    410          sp = 0;
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
 -> 413          for(i = 0; i < mhp->ncmds; i++){
    414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2ed
 libmacho.1.dylib`getsectiondata + 71 at getsecbyname.c:414, stop reason =
 instruction step into
     frame #0: 0x00000001001ac2ed libmacho.1.dylib`getsectiondata + 71 at
 getsecbyname.c:414
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
 -> 414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
    417                  }
 (lldb) frame variable
 (const struct mach_header_64 *) mhp = 0x000000010000d610
 (const char *) segname = 0x000000010000fcd1 "__TEXT"
 (const char *) sectname = 0x000000010000fcd8 "__eh_frame"
 (unsigned long *) size = 0x00007fff5fbfecc8
 (uint32_t) i = 0
 (intptr_t) slide = 0
 (segment_command_64 *) sgp = <variable not available>
 (uint32_t) j = <variable not available>
 (section_64 *) sp = <variable not available>
 (lldb) frame variable sgp->cmd --format s
 (uint32_t) sgp->cmd = <Parent failed to evaluate: variable not available.
 >
 (lldb) thread step-inst
 Process 88388 stopped
 * thread #1: tid = 0x2d03, 0x00000001001ac2ed
 libmacho.1.dylib`getsectiondata + 71 at getsecbyname.c:414, stop reason =
 EXC_BAD_ACCESS (code=1, address=0x1e8c10800)
     frame #0: 0x00000001001ac2ed libmacho.1.dylib`getsectiondata + 71 at
 getsecbyname.c:414
    411          sgp = (struct segment_command_64 *)
    412                ((char *)mhp + sizeof(struct mach_header_64));
    413          for(i = 0; i < mhp->ncmds; i++){
 -> 414              if(sgp->cmd == LC_SEGMENT_64){
    415                  if(strcmp(sgp->segname, "__TEXT") == 0){
    416                      slide = (uintptr_t)mhp - sgp->vmaddr;
    417                  }
 (lldb) thread step-inst
 }}}

--
Ticket URL: <https://trac.macports.org/ticket/49764#comment:42>
MacPorts <https://www.macports.org/>
Ports system for OS X



More information about the macports-tickets mailing list