Cleanup compiler functions
completed by: Aleksandar
mentors: Andrew Whitworth
Task Description
Parrot Ticket #2135 suggests an improvement to the Parrot_compile_string and Parrot_compile_file functions in the file src/interp/inter_misc.c. Currently this function assumes that the given text or file is to be compiled using the default PIR compiler. However, this is not always going to be the case.
NOTE: Due to some other work, these functions might be renamed to Parrot_interp_compile_string and Parrot_interp_compile_file in src/interp/api.c
Fix these two functions in the following ways:
- Parrot_compile_file should take three arguments: PARROT_INTERP, STRING *fullname, and STRING *compiler.
 - Update all places that call Parrot_compile_file to pass in the correct compiler name string to use ("PIR" or "PASM" for most existing cases)
 - Parrot_compile_string should take three arguments: PARROT_INTERP, STRING *code and STRING *compiler. Notice that the "error" parameter is disappearing and will not be replaced.
 - run "make headerizer" to update all .h files
 - Update all places that call Parrot_compile_string to use the correct arguments.
 - Update tests and documentation that reference these functions
 
Steps To Complete This Task
- Create a fork of parrot.git on github.com
 - Perform all the necessary code and/or documentation changes
 - Build parrot and run it's test suite (make fulltest) to verify that things still work
 - You can also submit a smoke report with "make smoke", but that is optional. This requires installing a few Perl modules from CPAN.
 - Create a Github pull request (button on the upper right of your fork) to have your changes incorporated into the master repository
 
Benefits
- Stuff
 
Requirements
- Knowledge of BLANK.
 - Abillity of BLANK.