1 | * Status as of 4/24/99 |
---|
2 | |
---|
3 | Version 0.6.8 Released |
---|
4 | |
---|
5 | *** Important Changes in 0.6.8 from 0.6.4 which may affect code *** |
---|
6 | |
---|
7 | - Inhibited nodes are no longer recursively removed, to retain |
---|
8 | substructure. Once a node is removed, subnodes are not touched (the |
---|
9 | previous behavior I consider a bug, since if you pragma inhibit |
---|
10 | everything inside gets messed up, making traversal there impossible). |
---|
11 | |
---|
12 | ** New Features for libIDL 0.6.8 from 0.6.4 |
---|
13 | |
---|
14 | - New parse flag: IDLF_INHIBIT_INCLUDES: this causes libIDL to |
---|
15 | implicitly assume the following #pragma inhibits around every included |
---|
16 | file: |
---|
17 | |
---|
18 | #pragma inhibit push |
---|
19 | #include "file.idl" |
---|
20 | #pragma inhibit pop |
---|
21 | |
---|
22 | With this parse flag enabled, the same inhibit effect is achieved |
---|
23 | without needing #pragmas: |
---|
24 | |
---|
25 | #include "file.idl" |
---|
26 | |
---|
27 | - New parse flag: IDLF_INHIBIT_TAG_ONLY: you can opt not to have |
---|
28 | inhibited nodes removed during parse time. They can be removed later |
---|
29 | by calling IDL_tree_remove_inhibits, which is now a public function. |
---|
30 | |
---|
31 | ** Bug Fixes for libIDL 0.6.8 from 0.6.4 |
---|
32 | |
---|
33 | - Multiple calls to IDL_parse_filename are now fixed when one of them |
---|
34 | fails. As a result, we now require flex as a side effect to generate |
---|
35 | the scanner. You can compile without having flex however, since the |
---|
36 | pre-generated scanner is included in the source distribution. |
---|
37 | |
---|
38 | |
---|
39 | * Status as of 3/23/99 |
---|
40 | |
---|
41 | Version 0.6.4 Released |
---|
42 | |
---|
43 | *** Important Changes in 0.6.4 from 0.6.0 which may affect code *** |
---|
44 | |
---|
45 | - Some fields were added to the end of the IDL node structure, and |
---|
46 | IDL_tree_func_data. Most code shouldn't be affected if you use |
---|
47 | pointers, unless you've hardcoded the struct. A recompile may be |
---|
48 | necessary if you have hardcoded structs like this. |
---|
49 | |
---|
50 | ** New Features for libIDL 0.6.4 from 0.6.0 |
---|
51 | |
---|
52 | - Unresolved forward declarations generate warnings now, not errors |
---|
53 | (unless IDLF_PEDANTIC is specified). These warnings can be turned off |
---|
54 | altogether if the IDLF_IGNORE_FORWARDS parse flag is specified. |
---|
55 | |
---|
56 | - IDL_tree_to_IDL improvements and fixes. |
---|
57 | |
---|
58 | - New function IDL_tree_to_IDL_string works exactly like |
---|
59 | IDL_tree_to_IDL but returns a GString instead. |
---|
60 | |
---|
61 | - More error and warning message improvements. |
---|
62 | |
---|
63 | - XPIDL support is more complete, and is nearing usefulness. |
---|
64 | |
---|
65 | - IDLF_CODEFRAGS and IDLF_PROPERTIES parse flags added to support |
---|
66 | individual enabling without full XPIDL syntax. If you want the native |
---|
67 | extension, you might as well just enable XPIDL support since you're |
---|
68 | probably going to lose portability anyway. |
---|
69 | |
---|
70 | - Compatibility with standard lex. Although standard lex can be used, |
---|
71 | flex seems to create better and less buggy scanners. |
---|
72 | |
---|
73 | - Miscellaneous fixes the the build process from various people. If |
---|
74 | you run into problems with undefined symbols in the parser or lexer, |
---|
75 | you might try rm -f stamp-parser and rebuild (hopefully this will be |
---|
76 | fixed in the future sometime, but it's low priority). |
---|
77 | |
---|
78 | |
---|
79 | * Status as of 2/22/99 |
---|
80 | |
---|
81 | Version 0.6.0 Released |
---|
82 | |
---|
83 | *** Important Changes in 0.6.0 from 0.5.0 which may affect code *** |
---|
84 | |
---|
85 | - All memory allocated which is received from libIDL must be freed |
---|
86 | with glib free routines, i.e. g_free. For instance the value from |
---|
87 | IDL_ns_ident_to_qstring should be freed with g_free. |
---|
88 | |
---|
89 | - IDL_tree_func now passes an IDL_tree_func_data struct pointer |
---|
90 | instead of the just the tree node. This gives you the current node, |
---|
91 | the up path of the traversal, and the real up path (from the node's up |
---|
92 | pointer), which is useful since the paths can be different in the case |
---|
93 | of a predefined identifier referenced in a different place. Be sure to |
---|
94 | update your callbacks for 0.6. |
---|
95 | |
---|
96 | - Do not rely on IDLN_* enumeration ordering. An alternative method |
---|
97 | for using jumptables is mentioned in the IDL header file. |
---|
98 | |
---|
99 | ** New Features for libIDL 0.6.0 |
---|
100 | |
---|
101 | - Overhauled versioning system, with support for libIDL-config, an |
---|
102 | AM_PATH_LIBIDL Automake macro, and C version defines. |
---|
103 | |
---|
104 | - New functions, including node properties and namespace functions. |
---|
105 | IDL_parse_filename_with_input was added to facilitate porting to |
---|
106 | platforms which don't have a readily available CPP (e.g. Win32). |
---|
107 | |
---|
108 | - XPIDL support is now in place (optionally activated with a parse |
---|
109 | flag). |
---|
110 | |
---|
111 | - Additional support for node suppression with #pragma inhibit. |
---|
112 | |
---|
113 | - Support for Win32. |
---|
114 | |
---|
115 | - Many bug fixes. |
---|
116 | |
---|
117 | |
---|
118 | * Status as of 8/17/98 |
---|
119 | |
---|
120 | ** Just about everything is working now, except for a few small |
---|
121 | ambiguity cases which may not get detected, but should be easily |
---|
122 | avoidable anyway. The changeover to using glib is there, and hash |
---|
123 | tables are used extensively now so that the O order has been reduced. |
---|
124 | |
---|
125 | Repository IDs are also generate properly now, along with the three |
---|
126 | pragams, and there is also a declaration spec which can tag certain |
---|
127 | interfaces to not generate tree data. Error messages have also been |
---|
128 | improved significantly. |
---|
129 | |
---|
130 | The docs are out of date and need revamping. |
---|
131 | |
---|
132 | |
---|
133 | * Status as of 7/18/98 |
---|
134 | |
---|
135 | ** Most needed features are working to read CORBA v2.2 IDL. See the |
---|
136 | file BUGS to see what else needs to be done; at this point things like |
---|
137 | speed are low priority, however a changeover to using glib and more |
---|
138 | efficient data structures like sorted heaps or hashes might be in |
---|
139 | order down the line. I'm not sure how useful libIDL might be apart |
---|
140 | from its use in an IDL compiler, but the docs still need work. |
---|
141 | |
---|
142 | Andrew Veliath |
---|