Please sign in to comment.
The parrot utils could not load pbc compatible, but older pbc fils anymore because opslib directories and the init function hardcoded the parrot version (even with patch!) and not the PBC_COMPAT version. Replaced all parrot version triples in the pbc format with the PBC version duple. parrot utils can now load older but compatible pbc files (again). Replaced the hardcoded version numbers with c preprocessor macros in the bootstrapped opslib sources and headers, to be more independent and simplier implementation. If the ops did not change, the ops do not need to get regenerated anymore for each version bump. The Ops::Emitter version method is not used anymore, since bootstrap-ops has been simplified. Sanified the Makefile by adding missing dependencies and do proper identation for depends and commands. Prev. line-broken depends were not visually indistuingishible from commands, and line-broken commands neither. Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision. Bump PBC_COMPAT to 13.0, the opslib directories store now only two version numbers, not three.
- Loading branch information...
Showing with 161 additions and 188 deletions.
- +2 −4 PBC_COMPAT
- +7 −5 compilers/opsc/Rules.mak
- +10 −7 compilers/opsc/src/Ops/Emitter.pm
- +8 −35 compilers/opsc/src/Ops/File.pm
- +5 −0 config/auto/revision.pm
- +3 −2 config/gen/config_h/config_h.in
- +1 −1 config/gen/config_pm.pm
- +1 −1 config/gen/config_pm/config_lib_pir.in
- +78 −93 config/gen/makefiles/root.in
- +3 −4 frontend/pbc_dump/main.c
- +2 −3 include/parrot/oplib.h
- +4 −1 include/parrot/oplib/core_ops.h
- +8 −6 src/ops/core_ops.c
- +11 −14 src/packfile/segments.c
- +6 −8 src/pmc/oplib.pmc
- +1 −1 src/pmc/packfile.pmc
- +2 −2 t/compilers/opsc/06-opsfile.t
- +1 −1 t/compilers/opsc/08-emitter.t
- +8 −0 t/native_pbc/testdata/annotations.pir
Oops, something went wrong.