Estimated hours taken: 0.1
Branches: main
tools/submit_patch:
Back out the previous change, which was clearly nonsensical --
inserting IL code in a shell script!?! -- and must have been
committed accidentally (by petdr).
Estimated hours taken: 8
Branches: main
The comparison and unification function pointers stored in the
type_ctor_info must be pointers to functions where all the arguments
are boxed. This wasn't occuring on the IL backend for types which
are value types.
il_compiler/compiler/rtti_to_mlds.m:
Call ml_gen_closure_wrapper to construct a version of the
comparison and unification functions where the arguments are
boxed. The wrapper function simply unboxes the arguments and
calls the actual special pred.
il_compiler/compiler/ml_closure_gen.m:
Adapt ml_gen_closure_wrapper so that it can generate a wrapper
function for special preds.
tests/hard_coded/Mmakefile:
tests/hard_coded/equality_pred_which_requires_boxing.exp:
tests/hard_coded/equality_pred_which_requires_boxing.m:
Add a test case for this bug.
Estimated hours taken: 1
Branches: main
tools/submit_patch:
A few minor fixes:
- Don't commit by default; only commit if --commit is specified.
I think having commit enabled by default was a bit too error-prone.
Forcing the user to explicitly specify --commit makes them think
about it a bit more.
- Run `contrib/gcc_update --touch' after checking out the GCC sources.
(See comments in gcc_update for the rationale.)
- Build GCC using `make bootstrap' rather than `make', as recommended
in the GCC build instructions.
- Fix a bug with the code to create FILES.old and FILES.new.
Estimated hours taken: 1
Branches: main
tools/submit_patch:
Implement the `--gcc' option. This also required some changes
to the way patches are applied and cvs add/remove commands
issued, to handle patches to sources from the gcc or mercury-gcc
distributions.
Also add a new option `--mercury-gcc-branch', for specifying
which CVS branch to use for the mercury-gcc directory.
Estimated hours taken: 1
Branches: main
tools/submit_patch:
- Document the --title option.
- Implement the --no-commit option.
- Add new option --gcc, for testing the GCC back-end
(this option is not yet implemented).
- Add new options --branch and --gcc-branch,
for testing and committing on a branch.
- Add new options --configure and --gcc-configure,
for specifying options to configure.
- Rearrange the code a bit to improve readability.
Estimated hours taken: 4
Branches: main
tools/submit_patch:
New file. This implements a "commit server".
It takes as input a log message and a patch.
It checks out the Mercury sources, applies the patch,
and it (by bootchecking in a couple of grades),
and if the tests pass, it commits the patch.
It locks the test directory, so you can submit
multiple patches at once and it will only run
one of them at a time.
Not yet very well tested.