OSDN Git Service

Correct some obfuscated typedef portability issues.
[mingw/pexports.git] / ChangeLog
1 2013-05-28  Keith Marshall  <keithmarshall@users.sourceforge.net>
2
3         Correct some obfuscated typedef portability issues.
4
5         * pexports.c: Include inttypes.h; it permits use of...
6         (PRIdPTR): ...this ISO-C99 standard macro, in preference to...
7         (INT_PTR_FORMAT): ...this non-standard contrivance; similarly...
8         (intptr_t): ...substitute this ISO-C99 standard typedef...
9         (INT_PTR): ...for this non-standard type.
10
11         * pexports.h: Include stdint.h; typedef...
12         (BYTE): ...this, as explicitly equivalent to uint8_t.
13         (WORD): ...this, as explicitly equivalent to uint16_t.
14         (DWORD): ...this, as explicitly equivalent to uint32_t.
15         (INT_PTR, INT_PTR_FORMAT): No longer required; delete them.
16         (ULONGLONG): Explicitly typedef as equivalent to uint64_t; although
17         'unsigned long long' seems a better fit, our present usage requires
18         the explicit 64-bit association, and use of this standard type allows
19         us to eliminate all references to Microsoft's non-standard __int64.
20         (LONG): Explicitly typedef as equivalent to int32_t; technically, this
21         is incorrect, but misuse elsewhere requires the explicit 32-bit type,
22         which is not guaranteed by ISO-C99's standard 'long' type.
23
24 2011-09-14  Daniel Collins  <solemnwarning@solemnwarning.net>
25
26         Avoid segmentation faults in forwarder function checks.
27
28         * pexports.h (dump_exports): Adjust prototype to accommodate new
29         'exports_size' argument; this is to be assigned and passed from...
30         * pexports.c (main): ...here; assigned value is determined from the
31         export table size recorded in the PE file image, whence passed to...
32         (dump_exports): ...here; it is used to avoid crashing or corruption
33         when the export table isn't at the end of its section.  Also check
34         for, and filter out duplicated symbol reports.
35
36 2009-09-15  Charles Wilson  <cwilso11@users.sourceforge.net>
37
38         Slight build improvements.
39
40         * README: Update.
41         * Makefile: Rewrite dist rule to create a .tar.lzma instead
42         of a .zip (and don't create a tarbomb). 
43
44 2009-09-15  Charles Wilson  <cwilso11@users.sourceforge.net>
45
46         Package 0.44-1-mingw32 fixes.
47
48         * pexports.c (main): Fix typo in usage statement.
49         * pexports.h: Ensure ULONGLONG is defined.
50         * Makefile: Force use of flex and bison, not lex and yacc.
51
52 2008-08-31  Tor Lillqvist  <tml@novell.com>
53
54         Release 0.44. Add support for 64-bit executables.
55
56         * hlex.l
57         * hparse.y
58         * pexports.h
59         * pexports.c
60         * str_tree.h
61         * str_tree.c: Handle also 64-bit executables. Make it work also if
62         built as 64-bit code. Remove all gcc -Wall warnings. Make it
63         compilable also with MSVC. Disable Wow64 file system redirection
64         when running as a 32-bit process on 64-bit Windows. Bump version
65         to 0.44.
66         * Makefile: New.
67         * pe.h: Not needed, removed.
68         * hparse.h: Remove generated file.
69         * Makefile.am: Removed.
70
71 2002-11-08  Luke Dunstan  <infidel@users.sourceforge.net>
72
73         * pexports.c (dump_exports): fix exports incorrectly
74         determined to be forwarders.
75
76 1999-04-02  Paul Sokolovsky  <Paul.Sokolovsky@technologist.com>
77
78         * pexports.c: now distinguishes data/non-data symbols,
79         depending on type of section symbol in
80         * pexports.c: in verbose mode prints section name for symbol
81         * pexports.c: file offsets are now in hex
82
83 1998-11-07  Anders Norlander  <kv98anr@cs.umu.se>
84
85         * hparse.y: types and parameters are now recognized as
86         a series of tokens, which means that keywords like const
87         struct and so on are not recognized as such, allowing any
88         kind of parameter, including function pointers.
89
90 1998-11-05  Anders Norlander  <kv98anr@cs.umu.se>
91
92         * hlex.l: removed all tokens except ID, CONST and VOLATILE
93         * hparse.y: Added INC_ARGS macro to increment arg_size only if
94         new flag inc_flag is set
95         * hparse.y: Added function_pointer and function_pointer_name rules
96         * hparse.y: Function attributes are now handled as list of ID's
97         * pexports.h: Incremented VER_MINOR
98         * pexports.c: Print name of file if a header is not found
99         * pexports.c: Separated printing to function dump_symbol
100         * pexports.c: Fixed handling of forwarded exports
101
102 1998-10-26  Anders Norlander  <anorland@hem2.passagen.se>
103
104         * New files: str_tree.c str_tree.h: implements
105         a symbol tree.
106         * pexports.c: changed symbol handling to use str_tree,
107         add_function_prot removed.
108         * pexports.h: removed add_function_prot prototype
109         * hlex.l: removed unnecessary code (count, CONSTANT, STRING)
110         * hlex.l: added ATTRIBUTE token.
111         * hparse.y: completely rewritten. *Much* improved parser.
112         * pexports.h: changed VER_MINOR to 3
113
114 1998-10-21  Anders Norlander  <anorland@hem2.passagen.se>
115
116         * pexports.c: removed include_path structure and replaced
117         it with a generic string list str_list.
118         * pexports.c: preprocessor now defaults to "gcc -E -xc-header"
119         instead of "cpp".
120         * pexports.h: incremented minor version VER_MINOR to 2
121         * pexports.c: headers are now parsed after all paramaters
122         command line options have been parsed.
123         * hparse.y: fixed problem with unnamed parameters that
124         are pointers.
125         * pexports.c: in dump_exports: don't print extra white
126         space if ordinals are not supposed to be printed.