TODO Items from the BugTracker

use guest/guest if prompted for a password

Title Severity
(41634) [BUILD] warn and abort make if pbc compatibility has changed  
(46829) [CAGE] Clean up temporary files in t/pmc/parrotio.t  
(39085) [CAGE] pmc - make pmc2c.pl extract function declarations Wishlist 
(38929) [CAGE] [C] Get executable code out of .h files  
(37760) [CAGE] [C] imcc - item lists  
(57630) [DEPRECATED] "DOD" acronym  
(47011) [DEPRECATED] VTABLE entry 'new_from_string'  
(42334) [PGE] improve diagnostics on cut applied to a null term  
(40123) [PROPOSAL] push_eh + .param for argument mismatch errors  
(46819) [RFC] Should core PMCs emit warnings?  
(46821) [RFC] should readonly be deep or shallow?  
(45965) [RFC] Should slot names still have __ in front?  
(46817) [RFC] Should Undef generate a warning?  
(55308) [TODO] add_sub sanely adds MultiSub PMCs to a namespace  
(54236) [TODO] Allow Parrot Hashes to have PMC keys  
(53462) [TODO] pct - report smarter error message for non-PAST nodes  
(38255) [TODO] YAML::Parser::Syck for parsing YAML  
(40156) [TODO] - Can't use an Iterator with a DynLexPad PMC  
(41675) [TODO] Add 'languages/perl6' to unified languages testing  
(53406) [TODO] Add 'long long' to types supported by NCI  
(56186) [TODO] Add --target=bytecode to HLLCompiler  
(40010) [TODO] Add a mutex to eval_nr in compilers/imcc/parser_util.c  
(48312) [TODO] add get_fd method to ParrotIO  
(56554) [TODO] add languages/*/Makefile install targets  
(52382) [TODO] Add nqp test to the root 'make test'  
(34452) [TODO] Add return signature to Parrot_call_sub that returns multiple values  
(40631) [TODO] add tests for native PMC types  
(42379) [TODO] adjust register layout in debug_print()  
(45973) [TODO] Allow dynamic expansion at runtime in Parrot_MMD_method_idx()  
(31633) [TODO] Allow Languages to be self contained  
(57728) [TODO] avoid 2038 bug if we haven't already.  
(52346) [TODO] avoid deprecated functions in config/gen/platform/darwin/dl.c  
(43731) [TODO] BIGNUM maps to what in prototype()?  
(23025) [TODO] Borrow setenv/unsetenv from Perl  
(33029) [TODO] build - additional install targets Wishlist 
(37934) [TODO] build - log file  
(37898) [TODO] build parrot includes  
(43715) [TODO] C<Perl::Module> should really be L<Perl::Module> (lib/Parrot/Docs/POD2HTML.pm)  
(45961) [TODO] Cache the namespace in mmd_create_builtin_multi_meth_2()  
(58184) [TODO] Cannot load charsets  
(58186) [TODO] Cannot load encodings  
(44441) [TODO] Change file search to return all files in distribution?  
(53210) [TODO] change new_from_string to init_str  
(57344) [TODO] Change runtime/parrot/* to runtime/*  
(45959) [TODO] Check arity of sub in mmd_maybe_candidate()  
(46153) [TODO] Check for regular file in Parrot_readbc()  
(42371) [TODO] check if object.can(method) in callmethodcc() op  
(44317) [TODO] Check that r20380 (INTVAL casts) works on 64 bit systems  
(42377) [TODO] clone interpreter to play into the debugger  
(43687) [TODO] combine abstract search with other search in lib/Parrot/Docs/File.pm  
(45963) [TODO] Complete implementation of Parrot_mmd_rebuild_table()  
(46129) [TODO] Complete implementation of PDB_hasinstruction()  
(46287) [TODO] Complete implementation of unused_label()  
(41499) [TODO] config - 32/64 bit architecture setting gcc specific  
(41497) [TODO] config - profiling options are specific to gcc in config/init/defaults.pm  
(56614) [TODO] Config hash should be marked read-only  
(45949) [TODO] Consider only candidates from current mro in mmd_search_classes()?  
(45967) [TODO] Consolidate readable_name(), key_set_to_string() and get_repr()  
(54650) [TODO] Convert Digest::MD5 to object-based implementation  
(43147) [TODO] Correct paths when building agains libparrot (config/init/hints/darwin.pm)  
(46123) [TODO] Correctly handle comparisons of PMCs with constants  
(47764) [TODO] COW for one or all users of a modified string  
(43384) [TODO] create 'make uninstall' target  
(36330) [TODO] Create a BigNum PMC  
(45947) [TODO] Create an appropriate class namespace in mmd_search_classes()  
(46087) [TODO] Create and implement setbuf() in src/pmc/parrotio.pmc  
(46089) [TODO] Create and implement setlinebuf() in src/pmc/parrotio.pmc  
(37664) [TODO] create autogenerated files read-only  
(41878) [TODO] create exporter pmc  
(46411) [TODO] Create string_free API for reusing string headers  
(41870) [TODO] create tests for Config/JSON.pbc  
(40124) [TODO] Document HLL mappings  
(46413) [TODO] Does the amount read in PIO_utf8_read() need to be checked?  
(42349) [TODO] dotnet - fix various ops for 64 bit architectures  
(51330) [TODO] dynext - dll versioning  
(44315) [TODO] Enable scripting of an entire configuration session  
(57548) [TODO] enhance #CONDITIONED_LINE by recursive logical expressions as in LISP  
(41765) [TODO] examples embedded in pod should all be parseable  
(39939) [TODO] exhaustively test new {set,get}*global and get*namespace opcodes  
(42378) [TODO] explicit exit from debug_break() op is not ok  
(44433) [TODO] Explicitly clearing to be RO?  
(43751) [TODO] extract code into sub generate_pbc()  
(43174) [TODO] Figure out why -libpath: needs to be removed from $linkflags and $ldflags (config/inter/progs.pm)  
(35391) [TODO] filepath manipulations  
(45945) [TODO] Fill Bound_NCI with a wrapper function  
(46283) [TODO] Fix control flow graph / loop detection issue in cfg_optimize()  
(46083) [TODO] Fix memory leak in src/pmc/parrotio.pmc:open()  
(46127) [TODO] Free allocated memory before return in PDB_disassemble()  
(42374) [TODO] free results from string_to_cstring() without ugly warnings  
(46177) [TODO] GC should lower CHUNKED_CTX_MEM threshold when collecting continuations  
(58250) [TODO] Generate callgrind output  
(39615) [TODO] get_outer op not defined in PDDs  
(43261) [TODO] give STMVar some real documentation  
(43709) [TODO] Groups should only contain items or paths  
(42376) [TODO] handle all ready states in add_io_event opcode  
(46393) [TODO] Handle case where libgdbm.so cannot be loaded on Win32  
(45943) [TODO] Handle inheritance and best match seaching in MMD  
(46095) [TODO] Handle multi-methods in add_method()  
(45999) [TODO] Handle multi-methods in Parrot_ComposeRole()  
(51870) [TODO] Handle Pending Events More Frequently  
(46143) [TODO] Handle removing breakpoints in debugger  
(46119) [TODO] Handle resume opcodes in PDB_next()  
(46085) [TODO] Handle stdin in src/pmc/parrotio.pmc:slurp()  
(36261) [TODO] HLL exception handling  
(42384) [TODO] imcc - check that all the .file text is malloced / freed  
(42382) [TODO] imcc - delete quotes and emit pbc  
(42383) [TODO] imcc - if frame->s.file was allocated free it  
(24251) [TODO] IMCC - improve error messages Wishlist 
(39796) [TODO] Implement .loadlib pragma in IMCC  
(46279) [TODO] Implement constant_propagation() in imcc/opimizer.c  
(46403) [TODO] Implement locking around list access in Parrot_on_exit()  
(46165) [TODO] Implement method cache invalidation in Parrot_store_global_cur()  
(45957) [TODO] Implement mmd_is_hidden()  
(43681) [TODO] implementation of is_docs_link() needs more thought  
(44443) [TODO] Increase code coverage of json  
(46281) [TODO] Integrate all units in one pass  
(43749) [TODO] Is the check in prederef() good enough?  
(46155) [TODO] Is usage of mem_sys_free() ok in Parrot_readbc()?  
(45985) [TODO] Isn't CONSTRUCT for creating new objects?  
(43713) [TODO] Items should only contain paths  
(45055) [TODO] JIT segs are currently not built  
(43691) [TODO] lex_source_files() collects lisp files as well but shouldn't  
(45367) [TODO] Limit the required interface for PMCs  
(39711) [TODO] Make PIR->PBC reentrant  
(44457) [TODO] make sure files match test files for DYNPMCs and DYNOPs etc  
(43266) [TODO] Make the Parrot::Test::<lang> Perl5 modules less redundant  
(34994) [TODO] make useful parts of Parrot config available at runtime  
(46159) [TODO] Match HLL of enclosing namespace in internal_ns_keyed()?  
(31147) [TODO] metadata in bytecode  
(46169) [TODO] Method cache invalidation should be a namespace function  
(43423) [TODO] missing tests for pdd15oo  
(56206) [TODO] Modify the smoke server to accept smokes from releases, not just svn  
(46141) [TODO] Move gdb breakpoints to the debugger interpreter  
(46079) [TODO] Move mmap check into the layer  
(45917) [TODO] Move thread check into Parrot_exit()  
(33923) [TODO] name of parrot executable  
(46101) [TODO] Need a pluggable MRO in instantiate() PMC  
(31726) [TODO] non-branching compare opcodes - JIT  
(42369) [TODO] optimize pointer loading in saveall()  
(57418) [TODO] optimize _config to omit .include "library/config.pir" on installables  
(39313) [TODO] or [BUG] improve PMC compiler  
(53754) [TODO] PackFile_Constant_unpack_pmc should call Parrot_thaw_constants(), not Parrot_thaw()  
(46163) [TODO] Parrot's default namespaces should be fully typed  
(58188) [TODO] Parrot_find_encoding_converter  
(46171) [TODO] Parrot_find_name_op() should walk up the scopes  
(46149) [TODO] Parrot_runcode and/or imcc_run_pbc should return a value  
(36283) [TODO] pasm/pir: forbid assignment syntax for inout params  
(57236) [TODO] pbc_to_exe --install pbc1 [pbc2...]  
(49177) [TODO] pct - PAST::Val node should throw exception if :value attribute not set  
(33922) [TODO] PDD09 GC system  
(42353) [TODO] perform a dynamic lookup if needed in pic_infix__() op  
(46145) [TODO] Perform bounds checking in GDB_B()  
(50090) [TODO] pge - throw useful exception on non-quoted non-word characters  
(53464) [TODO] pge - trim whitespace around #= keys  
(41265) [TODO] PGE: refactor pod_comment rule into PGE/Util.pbc  
(46081) [TODO] PMC layer is stored twice - which is used when?  
(43735) [TODO] pmc2c.pl - report errors for "?"  
(39142) [TODO] pmc2c.pl doesn't allow mixed case groups/pmc filenames.  
(42354) [TODO] preserve type system in pic_inline_sub__() op  
(46147) [TODO] Print out more information about the macro in imcc  
(43737) [TODO] properly implement the quick hack to get MMD variants  
(56782) [TODO] question in getNameForKey in Getopt::Obj  
(43857) [TODO] Refactor config probes that are used only by language implementation  
(39714) [TODO] Refactor IMCC to remove static globals  
(43150) [TODO] Relocate shared libs check for solaris?  
(46407) [TODO] Remove assumption that fstat exists?  
(46179) [TODO] Remove GC code depending upon -D40 before parrot 1.0  
(46503) [TODO] Remove individual runcore command line flags...  
(56996) [TODO] remove non FHS-compliant searchpaths  
(43683) [TODO] Remove the pod, or convert to html? (lib/Parrot/Docs/File.pm)  
(56998) [TODO] rename cygwin dll to cygparrot$MAJOR_$MINOR_$PATCH.dll  
(45909) [TODO] Replace quadratic search with something linear in find_exception_handler()  
(45987) [TODO] Replace quick and dirty method cache with a more robust one  
(46167) [TODO] Replace temporary hack for method cache invalidation with decent implementation  
(43171) [TODO] replace the value for $(MAKE) with the actual path (config/inter/make.pm)  
(46405) [TODO] Reset stacktop or disable GC in Parrot_exit()  
(46277) [TODO] Rewrite subst_constants() functions in imcc/opimizer.c  
(31133) [TODO] Run different run cores inside Test.pm  
(58034) [TODO] save config_args for make reconfig  
(43733) [TODO] scan src/call_list.txt if the generated signature is available  
(40367) [TODO] SDL tests  
(42381) [TODO] search library path for parrot bytecode when loading  
(52196) [TODO] Secure F2F user feedback for configure-build-test cycle for Parrot and languages  
(45951) [TODO] Should PMC_int_val be decremented within mmd_cvt_to_types()?  
(46157) [TODO] Stop depending upon typed namespaces in internal_ns_keyed()  
(45997) [TODO] Store 'right' class in shared objects  
(44435) [TODO] support getting implementations from central superclass  
(43727) [TODO] support getting implementations from central superclass  
(57410) [TODO] syntactic sugar for named arguments: "key" => value - Add to PDD19 or deprecate  
(39992) [TODO] t/op/01-parse_ops.t: figure out how to test parsing of pmc constant parameters  
(46137) [TODO] The text in an instruction after ':' is a label isn't it? (PDB_hasinstruction)  
(43721) [TODO] throw errors when attempting to rewrite argument accesses  
(40817) [TODO] track generated files during the configure/make process  
(45983) [TODO] Try HLL namespaces too in parrot_class_register()?  
(45365) [TODO] Update parrot.el to remove return argument parenthesis requirement  
(45941) [TODO] Use an MMD register interface taking a name in mmd_add_function()  
(42355) [TODO] use ARG_MAX in pic_callr__() op  
(45979) [TODO] Use current namespace as base when nested?  
(43146) [TODO] Use executable memory in i386 instructions test (config/auto/jit.pm)  
(45955) [TODO] Use half of the available INTVAL bits in mmd_sort_candidates()  
(46289) [TODO] Use indexed set/get in _is_ins_save()  
(56468) [TODO] use more VTABLE to avoid subclassing errors.  
(44437) [TODO] Use src_dir instead of build_dir when reading MANIFEST  
(46161) [TODO] Use the untyped interface in Parrot_find_global_n()  
(39117) [TODO] Using v?snprintf/strlcpy/strlcat when useful  
(42356) [TODO] verify $1 didn't change in pic_callr__() op  
(46409) [TODO] Verify flags in PIO_mmap_open()  
(45357) [TODO] Which exception should be thrown with register overflow?  
(46181) [TODO] Who clears ctx->current_object created in init_context()?  
(43739) [TODO] work out what the todo item in find_mmd_methods() is  
(46187) [TODO] Work out what todo item means in parrot_gc_context()  
(48194) [TODO] [APL] Move any constant string declarations into class_init()  
(48196) [TODO] [APL] Should the PMC in set_shape() be cloned?  
(48200) [TODO] [cola] Add documentation to files and functions  
(48198) [TODO] [cola] Add support for member resolution in lookup_type()  
(48204) [TODO] [cola] Check method signature in gen_arg_list_expr() and find out what type is expected  
(48206) [TODO] [cola] Check that expression evaluates to a method in gen_method_call()  
(48202) [TODO] [cola] Rewrite push_sym() to call generic Node versions of calls  
(48439) [TODO] [configure] compiling Parrot with LLVM  
(46675) [TODO] [C] Autovivify an Array and insert it in SELF  
(46925) [TODO] [C] Call pmc slicing functions from PackFiles thaw()  
(46701) [TODO] [C] Call the appropriate default method in instantiate()  
(46923) [TODO] [C] Check flags of parrot_range object in elements() method Slice PMC  
(48280) [TODO] [C] Check for a sub with more up-to-date unit->type lookup  
(46623) [TODO] [C] Check for bigint overflow in new_from_string()  
(46627) [TODO] [C] Check for exact Integer type in add()  
(46633) [TODO] [C] Check for overflow when incrementing or decrementing integers  
(46635) [TODO] [C] Check overflow for -maxint in absolute()  
(48282) [TODO] [C] Check that invoke is ok near the set_addr instruction in bb_findadd_edge()  
(46687) [TODO] [C] Correct destruction of PackFile objects  
(46685) [TODO] [C] Create a PackFile API and move code from destroy() there  
(46653) [TODO] [C] Create hash with needed size at initialisation  
(46667) [TODO] [C] Do we need properties in the default object system?  
(46699) [TODO] [C] Factor out common code with Sub.invoke and inherit it  
(46703) [TODO] [C] Fix ref_count handling for exception_handlers  
(46673) [TODO] [C] get_repr() should use freeze/thaw  
(46671) [TODO] [C] Handle bound user functions in get_attr_str()  
(46631) [TODO] [C] Implement Complex and BigInt RHS values for the pow() functions  
(46629) [TODO] [C] Implement multiplication of integers with complex numbers  
(46663) [TODO] [C] Is call to set_pmc_keyed_str() too late for --gc-debug in setprop()?  
(46651) [TODO] [C] Make a better interface for hash creation  
(46905) [TODO] [C] Make a shared variant of PackFile_new()  
(46677) [TODO] [C] Merge fixedbooleanarray.pmc with functions from BigInt PMC  
(46641) [TODO] [C] PMCs extending Hash should probably register themselves  
(46647) [TODO] [C] Possibly more code needs to return an empty STRING when no key found in hash  
(46621) [TODO] [C] Preserve type system in overflow()  
(46659) [TODO] [C] Remove quick hack code from check_set_std_props()?  
(48278) [TODO] [C] Should we call GetLastError for failure messages in .../win32/exec.c?  
(48274) [TODO] [C] Stop ignoring the known errors in Parrot_dlopen()  
(46643) [TODO] [C] Use freeze in get_repr() (for hashes)  
(46681) [TODO] [C] Use strerror_r instead of strerror  
(46683) [TODO] [C] Walk the fixups, locate globals and nullify the Sub PMC  
(46665) [TODO] [C] Walk the Method Resolution Order (MRO) in src/pmc/defaults.pmc  
(48276) [TODO] [C] Warn when failure occurs in Parrot_setenv()  
(46661) [TODO] [C] Warn when morph to normal or readonly class fails  
(48286) [TODO] [C] Warnings aren't emitted if a var isn't initialised and -w flag is on in propagate_need()  
(48264) [TODO] [C] Write file-level documentation  
(48260) [TODO] [C] Write function documentation  
(48128) [TODO] [dotnet] Does a null first byte need special handling in dotnetsignature.pmc?  
(48130) [TODO] [dotnet] Why does sig_token have to be set to 0xFFFF in make_bytecde_pmc()?  
(56476) [TODO] [META] Make compilers/pirc the standard PIR compiler  
(48445) [TODO] [NQP] - report undeclared variable usage  
(57430) [TODO] [PDD19] implement .HLL_map 'Foo' = 'Bar'  
(57426) [TODO] [PDD19] Implement new .HLL directive  
(51464) [TODO] [PDD] add date stamps to PDD's  
(46789) [TODO] [Perl] Add many more tests of SpecFiles->files to the smartlinks tests  
(46785) [TODO] [Perl] Add more File-related tests to the smartlinks tests  
(46797) [TODO] [Perl] Add more tests of SmartLinkServer to the smartlinks tests  
(46791) [TODO] [Perl] Add more tests of SpecFiles to the smartlinks tests  
(46793) [TODO] [Perl] Add more tests of Test to the smartlinks tests  
(46795) [TODO] [Perl] Add more tests of TestInfo to the smartlinks tests  
(46787) [TODO] [Perl] Add tests of PodFile->tree to the smartlinks tests  
(46865) [TODO] [Perl] Capture STDOUT when running BigNum tests  
(46893) [TODO] [Perl] Complete test coverage of Parrot::Test  
(46863) [TODO] [Perl] Factor old code out into Parrot::Test::BigNum  
(46915) [TODO] [Perl] Handle MMD vtable entries in tools/build/jit2c.pl (?)  
(46803) [TODO] [Perl] Improve the GC eagerness test in t/stm/basic.t  
(46899) [TODO] [Perl] Integrate smartlink info and emit html in smartlinks.pl  
(46799) [TODO] [Perl] Perform end-to-end testing of SmartLinks tests  
(46815) [TODO] [Perl] Test all parrot options  
(46891) [TODO] [Perl] Test Parrot::Test::run_command  
(46801) [TODO] [Perl] Test tools/util/smartlinks.pl  
(46807) [TODO] [Perl] Thread types tests need rework  
(46783) [TODO] [Perl] Use temporary files in smartlinks tests  
(46831) [TODO] [Pir] Create a callback in asynchronous open and close test  
(46849) [TODO] [Pir] Create helper functions to put data in an i/o pmc  
(46813) [TODO] [Pir] Fix 'join' issue 'sub name lookup in new thread' test  
(46845) [TODO] [Pir] Fix issue associated with 'setting non-existent by name' test  
(46857) [TODO] [Pir] Fix smartlinks in exporter PMC tests once speced  
(46855) [TODO] [Pir] Fix test in t/pmc/fixedpmcarray.t to work with prederef of JIT  
(46859) [TODO] [Pir] Refactor namespace getting code with make_namespace when implemented  
(46847) [TODO] [Pir] Replace dummy variable with an io object in iterator tests  
(46823) [TODO] [Pir] Rewrite Resizeable*Array tests properly when exceptions are implemented  
(46853) [TODO] [Pir] Setup i/o object with two lines in get_bool (vtable) test  
(46837) [TODO] [Pir] Test asynchronous print, read, and readline  
(46841) [TODO] [Pir] Test buffer_size in t/pmc/parrotio.t  
(46839) [TODO] [Pir] Test effects of buffer_type, not just set/get  
(46861) [TODO] [Pir] Test exporting mmd subs  
(46843) [TODO] [Pir] Test get_fd in t/pmc/parrotio.t  
(46851) [TODO] [Pir] Test more return values, including end of file of C<shift>  
(46827) [TODO] [Pir] Test open file, close file, delete file, reopen previously opened stream  
(46835) [TODO] [Pir] Test reading long chunks, eof, and across newlines  
(46833) [TODO] [Pir] Test reading/writing code points once supported  
(48172) [TODO] [pugs] Getting nonexistent value, exception or undef?  
(48174) [TODO] [pugs] Store undef for consistency  
(48176) [TODO] [pugs] Warning: use of uninitialized value  
(48168) [TODO] [regex] Implement init_pmc  
(48170) [TODO] [regex] Remove 'use of uninitialized value' issues in match.pmc  
(52904) [TODO]: Mac OS X 10.5: Resolve compilation and build issues  
(57358) [TODO]: Enable parallel testing  
(50380) [TODO]: override Test::Harness summary method to provide better-looking test result summary  
(50646) [TODO][C] implement Parrot_remove_parent in src/oo.c  
(46619) [TODO][C][Perl] Create MMD headers in Pmc2c.pm  
(48611) [TODO][DOCS] ROADMAP outdated  
(58374) [TODO][PDD19] Decide on maximum identifier length and implement this.  
(57636) [TODO][PDD19] Document the reason for :unique_reg flag  
(58236) [TODO][PDD19] make decision on open issue on .return directive in pdd19  
(58252) [TODO][PIR] finalize open issue with "pmc" type in .const definitions  


parrot