PreviousUpNext

5.6.2  Mythryl Compiler Switches

The Mythryl compiler’s operation may be modulated via a large and ever-changing collection of control settings.

These Mythryl compiler control settings may be listed from the Linux commandline by doing

    linux$ my -S

which will generate a long listing containing stuff like

         makelib::verbose = TRUE
         makelib::debug = TRUE
         makelib::keep_going_after_compile_errors = FALSE

The corresponding settings may be changed via commandline switches like

    linux$ my -Cmakelib::verbose=FALSE

These switches may also be listed, printed and set interactively:

    linux$ my
    eval:  show_controls();
         ...
         makelib::verbose = TRUE
         makelib::debug = TRUE
         makelib::keep_going_after_compile_errors = FALSE
         ...
    eval:  show_control "makelib::verbose";
    TRUE
    eval:  set_control "makelib::verbose" "FALSE";
    eval:  show_control "makelib::verbose";
    FALSE

For a more concrete example of using these switches, try doing:

     linux$ cd src/app/tut/test
     linux$ touch test.pkg
     linux$ my
     eval:  set_control "typechecker::type_package_language_debugging" "TRUE";
     eval:  make "test.lib";

This will spew debug printouts of various internal datastructures used by the code in src/lib/compiler/front/typer/main/type-package-language-g.pkg which can be a great help in understanding the code.

Many other compiler modules define similar debugging switches.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext