Custom Query (245 matches)

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (19 - 21 of 245)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Ticket Resolution Summary Owner Reporter
#140 fixed Definition file line can be greater than 512 bytes bird Yuri Dario
Description

A .def file line can exceed 512 bytes when a weak symbol is aliased, an ordinal number is present and weak linker adds '; !weakld changed this!'

In my case I reached around 535 bytes, below patch is slighlty larger :-)

Index: moddef1.c
===================================================================
--- moddef1.c	(revision 2701)
+++ moddef1.c	(working copy)
@@ -20,8 +20,8 @@
   long linenumber;
   unsigned flags;
   const char *ptr;
-  char string[2048];
-  char buffer[2048];
+  char string[768];
+  char buffer[768];
 };
 
 /* An entry of the keywords table associates a keyword string with a

#70 fixed Demangle function names for omf debug info bird Yuri Dario
Description

This code is courtesy of froloff and slightly modified by me.

Index: emxomf.smak
===================================================================
--- emxomf.smak	(revision 2592)
+++ emxomf.smak	(working copy)
@@ -8,6 +8,7 @@
 .TSRC	:= $(addprefix src/emxomf/,emxomf.c stabshll.c grow.c)
 .TCF	:= $(CFLAGS.DEF.VERSION)
 .TDEP	:= @O@libomflib$A
+.TLDF	:= -liberty
 include mkexe.smak
 
 .TARGET	:= emxomfar.exe
Index: stabshll.c
===================================================================
--- stabshll.c	(revision 2592)
+++ stabshll.c	(working copy)
@@ -35,6 +35,7 @@
 #include "grow.h"
 #include "stabshll.h"
 
+#include <demangle.h>
 
 /*******************************************************************************
 *   Defined Constants And Macros                                               *
@@ -3325,8 +3326,18 @@
     abort ();
   n = p - str;
 
-  /** @todo name demangling */
-  name = strpool_addn (str_pool, str, n);
+  {
+     char mangled[1024];
+     char* demangled;
+     memcpy(mangled, str, n);
+     mangled[n]= '\0';
+     demangled = cplus_demangle (mangled, DMGL_ANSI | DMGL_PARAMS);
+     if (demangled != NULL)
+      name = strpool_addn (str_pool, demangled, strlen(demangled));
+    else
+      name = strpool_addn (str_pool, str, n);
+  }
+
   proc_start_addr = symbol->n_value;
 
   /* now let's see if there is a memfunc for this name. */

#346 invalid Do not include stdint.h in 386/builtin.h KO Myung-Hun
Description

Hi/2.

386/builtin.h includes stdint.h. This may not be a problem on C, however this may be a problem on C++. Because, stdint.h does not define some macros such as INT64_C() on C++ by default. It needs some macros such as __STDC_CONSTANT_MACROS are declared.

So if stdint.h is included once without macro declaration on C++, later macros such as INT64_C() are not declares even if stdint.h is included explicitly.

For example,

#include <vector>
#include <iostream>

#define __STDC_CONSTANT_MACROS
#include <stdint.h>

int main()
{
    std::cout << INT64_C(0) << "\n";

    return 0;
}

This fails.

vector.cpp: In function `int main()':
vector.cpp:9: error: `INT64_C' undeclared (first use this function)
vector.cpp:9: error: (Each undeclared identifier is reported only once for each 
   function it appears in.)

However, this succeeds on other platforms such as mingw-482.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Note: See TracQuery for help on using queries.