diff options
Diffstat (limited to 'pidl/TODO')
-rw-r--r-- | pidl/TODO | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/pidl/TODO b/pidl/TODO new file mode 100644 index 0000000000..8886441a75 --- /dev/null +++ b/pidl/TODO @@ -0,0 +1,47 @@ +- warn when union instances don't have a discriminant + +- EJS output backend shouldn't use the NDR levels stuff but instead + as the "C levels" and NDR levels don't necessarily match. + +- true multiple dimension array / strings in arrays support + +- compatibility mode for generating MIDL-readable data: + - strip out pidl-specific properties + +- make bitmap an optional attribute on enum +- support nested elements +- support typedefs properly (e.g. allow "typedef void **bla;") +- make typedefs generate real typedefs +- improve represent_as(): allow it to be used for arrays and other complex + types + +- --explain-ndr option that dumps out parse tree ? + +- seperate tables for NDR and DCE/RPC + - maybe no tables for NDR at all? we only need them for ndrdump + and that can use dlsym() + +- allow data structures outside of interfaces + +- mem_ctx in the interface rather than as struct ndr member. + +- real typelibs + +- fix [in,out] handling and allocation for samba3: + - add inout + - make NULL to mean "allocate me" + - remove NDR_AUTO_REF_ALLOC flag + +- automatic test generator based on IDL pointer types + +- support converting structs to tuples in Python rather than objects +- convert structs with a single mattering member to that member directly, e.g.: + struct bar { + int size; + [size_is(size)] uint32 *array; + }; + + should be converted to an array of uint32's + +- python: fill in size members automatically in some places if the struct isn't being returned + (so we don't have to cope with the array growing) |