X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=TODO;h=7dc89a48b5e3e4ea835b2946a0846f828bfa1130;hp=ffda07aae8dbe8c7289a913facdc78b3d176933b;hb=44bd65fe60fb83fa4c3bbb0d4c679d2b70a096df;hpb=b9193a8d80bf7ea8d768b9521bcd298a03974c9d diff --git a/TODO b/TODO index ffda07a..7dc89a4 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,25 @@ -* move numbers to the lexer * avoid allocs inside structures by reallocating the whole structure * let the various list types be hashtables where appropriate * check out jit-dynamic * fix arginfo with nullable types -* pemalloc -* unions -* callbacks and function pointers -* let impl_Var point to impl_arg, just like decl_var? \ No newline at end of file +* think about a better system for EXTVARs, separate \set and \get functions are clunky +* fix right recursion of let_exp and set_exp +* improve varargs support, currently it's impossible to map e.g. curl_easy_setopt +* impl_var.name: remove leading '$' +* really solve the array/pointer problem + +* variadic macros +* predefined macros + * __COUNTER__ counter starting from 0, incremented each time expanded + * __BASE_FILE__ current PSI file + * __INCLUDE_LEVEL__ include level + * __TIMESTAMP__ lmod of current source file +* builtins +* int128 +* very small real numbers +* cache tokens of files and copy tokens if used for further processing + +* optimized inlines like htonl +* real integral type of enums + +* #pragma PSI lib "foo" instead of lib "foo";