Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Merge branch 'master' into tt1047/type_sizes

  • Loading branch information...
commit cb9e9b89695c0aaa50f0008c2c686910db4cbea1 2 parents b9c08dc + 4039e9d
@jkeenan jkeenan authored
Showing with 15,130 additions and 13,565 deletions.
  1. +20 −1 CREDITS
  2. +4 −0 ChangeLog
  3. +9 −4 MANIFEST
  4. +4 −2 MANIFEST.generated
  5. +6 −0 NEWS
  6. +1 −0  PBC_COMPAT
  7. +27 −59 PLATFORMS
  8. +1 −1  README
  9. +5 −4 RESPONSIBLE_PARTIES
  10. +1 −1  VERSION
  11. +20 −0 api.yaml
  12. +0 −1  compilers/imcc/imc.h
  13. +2 −2 compilers/imcc/imcc.l
  14. +23 −13 compilers/imcc/imclexer.c
  15. +5 −72 compilers/imcc/symreg.c
  16. +0 −16 compilers/imcc/symreg.h
  17. +38 −7 config/gen/makefiles/root.in
  18. +3 −1 docs/parrothist.pod
  19. +53 −53 docs/project/release_manager_guide.pod
  20. +2 −2 docs/tests.pod
  21. +0 −34 examples/benchmarks/overload.pl
  22. +335 −335 ext/nqp-rx/src/stage0/HLL-s0.pir
  23. +881 −881 ext/nqp-rx/src/stage0/NQP-s0.pir
  24. +496 −482 ext/nqp-rx/src/stage0/P6Regex-s0.pir
  25. +9 −0 ext/winxed/LICENSE
  26. +6 −2 ext/winxed/README
  27. +8,209 −7,634 ext/winxed/compiler.pir
  28. +435 −396 ext/winxed/driver.pir
  29. +3 −3 frontend/parrot/main.c
  30. +5 −1 frontend/parrot_debugger/main.c
  31. +1 −1  frontend/pbc_disassemble/main.c
  32. +4 −1 frontend/pbc_merge/main.c
  33. +31 −0 include/parrot/call.h
  34. +10 −0 include/parrot/library.h
  35. +1 −1  include/parrot/oplib/core_ops.h
  36. +251 −182 include/parrot/packfile.h
  37. +9 −0 lib/Parrot/Config.pm
  38. +1 −0  lib/Parrot/Harness/DefaultTests.pm
  39. +2 −1  lib/Parrot/Harness/Smoke.pm
  40. +1 −3 lib/Parrot/Pmc2c/PCCMETHOD.pm
  41. +2 −10 lib/Parrot/Pmc2c/PMC.pm
  42. +3 −2 lib/Parrot/Test.pm
  43. +51 −23 parrotbug
  44. +32 −0 ports/README.pod
  45. +1 −1  runtime/parrot/library/Digest/sha256.pir
  46. +4 −0 runtime/parrot/library/NCI/Utils.pir
  47. +119 −32 src/call/args.c
  48. +2 −1  src/embed.c
  49. +6 −33 src/embed/bytecode.c
  50. +30 −24 src/gc/fixed_allocator.c
  51. +29 −37 src/gc/gc_gms.c
  52. +2 −1  src/gc/gc_ms2.c
  53. +18 −28 src/hash.c
  54. +24 −15 src/hll.c
  55. +40 −0 src/library.c
  56. +136 −408 src/nci/extra_thunks.c
  57. +3 −3 src/ops/core_ops.c
  58. +193 −2,322 src/packfile/api.c
  59. +2 −1  src/packfile/output.c
  60. +150 −0 src/packfile/pf_private.h
  61. +2,228 −0 src/packfile/segments.c
  62. +2 −1  src/platform/linux/encoding.c
  63. +12 −0 src/platform/win32/dl.c
  64. +1 −3 src/platform/win32/error.c
  65. +2 −1  src/pmc.c
  66. +16 −0 src/pmc/bytebuffer.pmc
  67. +3 −0  src/pmc/eval.pmc
  68. +1 −1  src/pmc/hash.pmc
  69. +2 −3 src/pmc/imccompiler.pmc
  70. +0 −3  src/pmc/mappedbytearray.pmc
  71. +10 −9 src/pmc/namespace.pmc
  72. +3 −26 src/pmc/packfile.pmc
  73. +376 −0 src/pmc/packfileview.pmc
  74. +8 −3 src/pmc/parrotinterpreter.pmc
  75. +27 −13 src/pmc/string.pmc
  76. +7 −4 src/pmc/stringbuilder.pmc
  77. +2 −4 src/runcore/cores.c
  78. +1 −1  src/spf_render.c
  79. +7 −4 src/string/api.c
  80. +68 −48 src/string/encoding.c
  81. +1 −1  src/warnings.c
  82. +0 −60 t/README
  83. +163 −0 t/README.pod
  84. +9 −9 t/configure/035-step.t
  85. +4 −1 t/dynoplibs/debug.t
  86. +14 −16 t/dynpmc/os.t
  87. +1 −1  t/examples/library.t
  88. +50 −0 t/ext/winxed/compreg.t
  89. +1 −0  t/harness.pir
  90. +1 −0  t/library/.gitattributes
  91. +13 −0 t/library/nciutils.t
  92. 0  t/library/{perlhist.txt → perlhistory.txt}
  93. +12 −0 t/library/pg.t
  94. +2 −2 t/library/streams.t
  95. BIN  t/native_pbc/integer.pbc
  96. BIN  t/native_pbc/number.pbc
  97. BIN  t/native_pbc/number_1.pbc
  98. BIN  t/native_pbc/string.pbc
  99. BIN  t/native_pbc/string_1.pbc
  100. +3 −1 t/op/exceptions.t
  101. +4 −4 t/op/spawnw.t
  102. +3 −2 t/pmc/iterator.t
  103. +6 −1 t/pmc/mappedbytearray.t
  104. +129 −0 t/pmc/packfileview.t
  105. +6 −2 t/pmc/parrotinterpreter.t
  106. +30 −19 t/pmc/socket.t
  107. +2 −2 t/pmc/string.t
  108. +5 −0 t/src/embed.t
  109. +10 −3 t/src/embed/api.t
  110. +0 −166 t/steps/auto/git_describe-01.t
  111. +3 −2 tools/dev/mk_packfile_pbc
  112. +3 −5 tools/dev/nci_thunk_gen.pir
  113. +7 −7 tools/release/release.json
  114. +111 −0 tools/release/update_version.pl
View
21 CREDITS
@@ -384,6 +384,12 @@ D: makefile fixes
E: eric@lubow.org
W: http://eric.lubow.org/
+N: Felipe Pena
+D: Bug fixes
+E: felipensp@gmail.com
+U: Felipe
+S: Rio de Janeiro, Brazil
+
N: Felix Gallo
D: delegate.pmc patch
@@ -490,7 +496,7 @@ D: various Pynie patches
N: James E Keenan
E: jkeenan@cpan.org
U: jkeenan
-D: Testing of configuration and build tools
+D: Testing of configuration and build tools; release manager
W: http://thenceforward.net/parrot/
S: Brooklyn, NY, USA
@@ -502,6 +508,10 @@ D: lot of general hints and patches to improve portability
N: Jason Gloudon
+N: Jay Emmerson
+E: john.emerson@yale.edu
+U: jay
+
N: Jeff Clites
D: PPC JIT patches, ICU support, string handling
@@ -735,6 +745,11 @@ N: Markus Mayr
D: Implementation of the Rational PMC
D: Fixing SDL-bindings and examples
+N: Martin Olsen
+D: M0 tests
+U: mro
+E: github.com@martinolsen.net
+
N: Matt Boyle
U: ligne
D: Fixes to docs and test-suite.
@@ -1145,6 +1160,10 @@ N: Zach Morgan
E: zpmorgan@gmail.com
D: Rakudo patch
+N: Anthony Parsons
+E: flussence@gmail.com
+U: flussence
+
N: cvsdummy
U: cvsdummy
E: cvs@perl.org
View
4 ChangeLog
@@ -1,5 +1,9 @@
#1
+2011.07.19 jkeenan
+ * Released 3.6.0
+ See NEWS for more information.
+
2011.06.21 cotto
* Released 3.5.0
See NEWS for more information.
View
13 MANIFEST
@@ -484,7 +484,6 @@ examples/benchmarks/oofib.py [examples]
examples/benchmarks/oofib.rb [examples]
examples/benchmarks/oon.txt [examples]
examples/benchmarks/overload.pir [examples]
-examples/benchmarks/overload.pl [examples]
examples/benchmarks/primes.c [examples]
examples/benchmarks/primes.pasm [examples]
examples/benchmarks/primes.pl [examples]
@@ -863,6 +862,7 @@ ext/nqp-rx/t/p6regex/rx_quantifiers [test]
ext/nqp-rx/t/p6regex/rx_subrules [test]
ext/nqp-rx/t/p6regex/rx_syntax [test]
ext/winxed/Defines.mak []
+ext/winxed/LICENSE []
ext/winxed/README []doc
ext/winxed/Rules.mak []
ext/winxed/compiler.pir []
@@ -1287,6 +1287,8 @@ src/packfile/byteorder.h []
src/packfile/object_serialization.c []
src/packfile/output.c []
src/packfile/pf_items.c []
+src/packfile/pf_private.h []
+src/packfile/segments.c []
src/platform/aix/asm.s []
src/platform/ansi/dl.c []
src/platform/ansi/exec.c []
@@ -1391,6 +1393,7 @@ src/pmc/packfiledirectory.pmc []
src/pmc/packfileopmap.pmc []
src/pmc/packfilerawsegment.pmc []
src/pmc/packfilesegment.pmc []
+src/pmc/packfileview.pmc []
src/pmc/parrotinterpreter.pmc []
src/pmc/parrotlibrary.pmc []
src/pmc/parrotthread.pmc []
@@ -1451,7 +1454,7 @@ src/utils.c []
src/vtable.tbl [devel]src
src/vtables.c []
src/warnings.c []
-t/README []doc
+t/README.pod []doc
t/TESTS_STATUS.pod [test]
t/benchmark/benchmarks.t [test]
t/codingstd/c_arg_assert.t [test]
@@ -1678,6 +1681,7 @@ t/examples/shootout.t [test]
t/examples/streams.t [test]
t/examples/subs.t [test]
t/examples/tutorial.t [test]
+t/ext/winxed/compreg.t [test]
t/harness [test]
t/harness.pir [test]
t/include/fp_equality.t [test]
@@ -1699,7 +1703,7 @@ t/library/osutils.t [test]
t/library/p6object.t [test]
t/library/parrotlib.t [test]
t/library/pcre.t [test]
-t/library/perlhist.txt [test]
+t/library/perlhistory.txt [test]
t/library/pg.t [test]
t/library/rand.t [test]
t/library/range.t [test]
@@ -1910,6 +1914,7 @@ t/pmc/packfiledirectory.t [test]
t/pmc/packfileopmap.t [test]
t/pmc/packfilerawsegment.t [test]
t/pmc/packfilesegment.t [test]
+t/pmc/packfileview.t [test]
t/pmc/parrotclass.t [test]
t/pmc/parrotinterpreter.t [test]
t/pmc/parrotio.t [test]
@@ -1986,7 +1991,6 @@ t/steps/auto/format-01.t [test]
t/steps/auto/gc-01.t [test]
t/steps/auto/gcc-01.t [test]
t/steps/auto/gettext-01.t [test]
-t/steps/auto/git_describe-01.t [test]
t/steps/auto/glibc-01.t [test]
t/steps/auto/gmp-01.t [test]
t/steps/auto/headers-01.t [test]
@@ -2196,6 +2200,7 @@ tools/release/inc_ver.pir []
tools/release/release.json []
tools/release/releasecheck.pl []
tools/release/templates.json []
+tools/release/update_version.pl []
# Local variables:
# mode: text
# buffer-read-only: t
View
6 MANIFEST.generated
@@ -1,11 +1,11 @@
# See tools/dev/install_files.pl for documentation on the
# format of this file.
# Please re-sort this file after *EVERY* modification
-blib/lib/libparrot.3.5.0.dylib [main]lib
+blib/lib/libparrot.3.6.0.dylib [main]lib
blib/lib/libparrot.a [main]lib
blib/lib/libparrot.dylib [main]lib
blib/lib/libparrot.so [main]lib
-blib/lib/libparrot.so.3.5.0 [main]lib
+blib/lib/libparrot.so.3.6.0 [main]lib
compilers/data_json/data_json.pbc [data_json]
config/gen/call_list/opengl.in []
docs/ops/bit.pod [doc]
@@ -100,6 +100,7 @@ include/pmc/pmc_packfilefixuptable.h [devel]include
include/pmc/pmc_packfileopmap.h [devel]include
include/pmc/pmc_packfilerawsegment.h [devel]include
include/pmc/pmc_packfilesegment.h [devel]include
+include/pmc/pmc_packfileview.h [devel]include
include/pmc/pmc_parrotinterpreter.h [devel]include
include/pmc/pmc_parrotlibrary.h [devel]include
include/pmc/pmc_parrotthread.h [devel]include
@@ -411,6 +412,7 @@ src/pmc/packfilefixuptable.dump [devel]src
src/pmc/packfileopmap.dump [devel]src
src/pmc/packfilerawsegment.dump [devel]src
src/pmc/packfilesegment.dump [devel]src
+src/pmc/packfileview.dump [devel]src
src/pmc/parrotinterpreter.dump [devel]src
src/pmc/parrotlibrary.dump [devel]src
src/pmc/parrotthread.dump [devel]src
View
6 NEWS
@@ -5,7 +5,13 @@ New in 3.6.0
Previously, only PMCs could be stored in lexicals.
+ VTABLE_substr has been removed. VTABLE_substr_str has been renamed to
VTABLE_substr
+ + Added a new PackfileView PMC type, an intended replacement for the deprecated
+ Eval PMC.
+ + The is_integer vtable on the String PMC now works for all string encodings.
+ + Unicode error messages on Win32 now work correctly.
+ + A memory leak in IMCC was fixed.
- Languages
+ + The snaphost of Winxed included with Parrot was updated to version 1.0.0
+ Winxed has migrated to Github: https://github.com/NotFound/winxed
New in 3.5.0
View
1  PBC_COMPAT
@@ -28,6 +28,7 @@
# please insert tab separated entries at the top of the list
+11.0 2011.07.19 jkeenan released 3.6.0
10.0 2011.01.18 cotto released 3.0.0
9.0 2010.10.19 gerd released 2.9.0
8.0 2010.07.20 coke released 2.6.0
View
86 PLATFORMS
@@ -9,64 +9,34 @@ docs/parrot.pod) and "Extra".
Supported platforms:
-Platform B8 Runloops Feature Comp Test Inst YYYYMMDD
- CGoto EXEC Thr Sig
---------------------------------------------------------------------------------
-linux-sparc64-gcc-4.3.2 ? Y Y 20110114
-cygwin1.5.25-x86-gcc3.4.4 4 Y - - - Y Y Y 20090315
-darwin8.11.1-x86-gcc4.0.1 ?? Y ? ? ? Y Y N 20091020
-linux-x86-gcc4.1.2 Y ? Y Y Y Y ? 20090419
-linux-x86-gcc4.2.4 Y ? Y Y Y Y ? 20081023
-linux-x86-gcc4.3.2 Y ? Y Y Y Y ? 20081030
-linux-x86-gcc4.4.1 Y ? Y Y Y Y ? 20091103
-linux-x86-g++4.4.1 Y ? Y Y Y Y Y 20091116
-linux-x86-llvm-gcc-4.2 Y ? ? ? Y Y ? 20091021
-sol10-sparc-cc_5.9 B4 Y - Y Y Y Y ? 20090720
-sol10-sparc-cc_5.9 B8 Y - Y Y Y Y ? 20090720
-win32-x86-mingw_gcc3.4.5 Y - - - Y N/1 ? 20091116
-win32-x86-msvc_9.0 - - Y - Y Y Y 20091215
+Platform B8 Feature Comp Test Inst YYYYMMDD
+ Thr Sig
+--------------------------------------------------------------------
+darwin10.7.0-x86-gcc4.2.1 ? ? Y Y Y 20110718
+linux-sparc64-gcc-4.3.2 ? Y Y 20110114
+linux-x86-gcc4.5.2 Y Y Y Y ? 20110710
+win32-x86-msvc_10.0 ? - Y Y Y 20110718
+
Extra Platforms:
-Platform B8 Runloops Feature Comp Test Inst YYYYMMDD
- CGoto EXEC Thr Sig
---------------------------------------------------------------------------------
-cygwin1.7.0-x86-gcc4.3.2 4 Y - - - Y Y Y 20090315
-darwin9.8.0-x86-gcc4.0.1 Y ? Y ? Y Y Y 20100215
-dragonfly2.2.0-i386-gcc-4.1.2 4 Y - Y Y Y Y ? 20090427
-freebsd-x86-gcc-4.2.1 4 Y Y ? ? Y Y Y 20090415
-freebsd-amd64-gcc-4.2.1 8 Y - ? ? Y Y Y 20090720
-linux-amd64-clang-r73854 8 ? = Y Y Y/4 Y/1 ? 20090622
-linux-amd64-clang-r75433 8 Y ? ? ? Y Y*2 ? 20090913
-linux-amd64-gcc4.3.2 8 Y - Y Y Y Y/1 Y 20091020
-linux-amd64-gcc4.3.3 8 Y ? Y Y Y Y ? 20090712
-linux-amd64-gcc4.4.1 8 Y ? Y ? Y Y Y 20100215
-linux-amd64-g++4.4.1 8 Y ? Y Y Y Y Y 20091116
-linux-ppc-gcc_4.4.2 Y Y Y Y Y Y Y 20100118
-linux-ppc64-gcc_4.4.2 Y Y Y Y Y Y Y 20100118
-linux-arm-gcc_4.4.2 Y Y Y Y Y Y Y 20100118
-linux-x86-icc_11.1 4 Y ? Y Y Y Y Y 20100209
-linux-amd64-icc_11.1 8 Y ? Y Y Y Y Y 20100209
-netbsd3.1-ppc-gcc-3.3.3 B Y ? Y Y Y Y ? 20090419
-netbsd4.0-alpha-gcc-4.1.2 8 Y ? Y Y Y Y ? 20090518
-netbsd4.0-arm-gcc-4.1.2 Y ? Y Y Y Y ? 20090518
-netbsd4.0-i386-gcc-4.1.2 Y ? Y Y Y Y ? 20090517
-netbsd4.0-ppc-gcc-4.1.2 B Y ? Y Y Y Y ? 20090519
-netbsd4.0-sparc64-gcc-4.1.2 B8 Y - Y Y Y Y ? 20090519
-netbsd4.0-x86_64-gcc-4.1.2 8 Y ? Y Y Y Y ? 20110418
-netbsd5.0-i386-gcc-4.1.3 Y ? Y Y Y Y ? 20090519
-netbsd5.0-ppc-gcc-4.1.3 B Y ? Y Y Y Y ? 20090517
-netbsd5.0-mipseb32-gcc-4.1.3 B Y ? Y Y Y Y ? 20090518
-netbsd5.0-sparc-gcc-4.1.3 B Y - Y Y Y Y ? 20090519
-netbsd5.0-sparc64-gcc-4.1.3 B8 Y - Y Y Y Y/1 ? 20090519
-netbsd5.0-x86_64-gcc-4.1.3 8 Y - Y Y Y Y ? 20090419
-opensol2009.06-x86-gcc3.4.3 4 ? ? ? ? Y Y/2 Y 20091215
-win32-x86-mingw_gcc4.3.0 Y - - - Y Y/88 ? 20081203
-win32-x86-msvc_6.0 4 - - - - Y Y/8 ? 20090315
-win32-x64-msvc_9.0 8 - - - - Y Y/17 ? 20091020
-win32-x64-mingw_gcc3.4.5 8 Y ? ? ? Y Y ? 20090210
-win64-amd64-msvc_9.0 8 N N ? ? Y*1 N ? 20090720
+Platform B8 Feature Comp Test Inst YYYYMMDD
+ Thr Sig
+--------------------------------------------------------------------
+darwin9.8.0-x86-gcc4.0.1 Y ? Y Y Y 20100215
+linux-amd64-gcc4.4.1 8 Y ? Y Y Y 20100215
+linux-ppc-gcc_4.4.2 Y Y Y Y Y 20100118
+linux-ppc64-gcc_4.4.2 Y Y Y Y Y 20100118
+linux-arm-gcc_4.4.2 Y Y Y Y Y 20100118
+linux-x86-icc_11.1 4 Y Y Y Y Y 20100209
+linux-amd64-icc_11.1 8 Y Y Y Y Y 20100209
+netbsd4.0-x86_64-gcc-4.1.2 8 Y Y Y Y ? 20110418
+win-x64-msvc_16.0 8 ? ? Y Y ? 20110718
+linux-amd64-clang2.8 8 ? ? Y Y Y 20110718
+darwin8.11.0-ppc-4.0 B Y ? Y Y Y 20110718
+darwin8.11.0-ppc-4.0 B Y ? Y Y*/1 Y 20110718
+
Legend:
@@ -83,8 +53,6 @@ B ... Processor is big endian
8 ... opcode_t is 8 byte, i.e. a 64 bit machine
4 ... opcode_t is 4 byte, --m=32 on a 64 bit machine
-CGoto ... CGoto runloop is supported
-EXEC ... compiling to native executables is supported
Thr ... Parrot is multi-threaded
Sig ... Parrot catches a SIGHUP signal
Comp ... Compiles ok
@@ -94,11 +62,11 @@ Inst ... "make install" is ok
YYYYMMDD The date tested.
Remarks:
-*1 64-bit MSVC uses 32-bit int and long values. For 64-bit use
- --ccflags="-GS- -MD" --intval="long long" --opcode="long long"
-*2 only builds when configured --without-gmp. See TT #1006
+*n/a
The following configurations are also working on x86/linux (and possibly
other platforms):
optimized build: perl Configure.pl --optimize
system malloc: perl Configure.pl --gc=libc
+
+darwin8.11.0-ppc-4.0 passes all tests without --optimize but fails one test with --optimize
View
2  README
@@ -1,4 +1,4 @@
-This is Parrot, version 3.5.0
+This is Parrot, version 3.6.0
------------------------------
Parrot is Copyright (C) 2001-2011, Parrot Foundation.
View
9 RESPONSIBLE_PARTIES
@@ -16,7 +16,7 @@ Architect Christoph Otto
Product Manager Andrew Whitworth
-Project Manager Jim Keenan
+Project Manager James E Keenan
Community Manager Jonathan "Duke" Leto
@@ -35,6 +35,7 @@ Release Manager Bob Rogers
Gerd Pokorra
Michael Hind
Tyler Curtis
+ James E Keenan
Metacommitter Allison Randal
Jerry Gay
@@ -42,7 +43,7 @@ Metacommitter Allison Randal
chromatic
Jeff Horwitz
Andrew Whitworth
- Jim Keenan
+ James E Keenan
Jonathan "Duke" Leto
Julian Albo
@@ -79,7 +80,7 @@ Patch Monster chromatic
Jonathan Worthington
Jerry Gay
Will Coleda
- James Keenan
+ James E Keenan
Francois Perrad
Christoph Otto
Julian Albo
@@ -90,7 +91,7 @@ Patch Monster chromatic
Contributors
------------
-Cage Cleaner James Keenan
+Cage Cleaner James E Keenan
Jerry Gay
chromatic
Andy Lester
View
2  VERSION
@@ -1 +1 @@
-3.5.0
+3.6.0
View
20 api.yaml
@@ -481,3 +481,23 @@
tags:
- 'deprecated'
ticket: 'http://trac.parrot.org/parrot/ticket/1910'
+-
+ name : 'PackfileView PMC'
+ tags :
+ - 'experimental'
+ ticket : 'http://trac.parrot.org/parrot/ticket/2145'
+-
+ name : 'Eval PMC'
+ tags:
+ - 'deprecated'
+ ticket: 'http://trac.parrot.org/parrot/ticket/1969'
+-
+ name : 'PackFile_* API functions'
+ tags :
+ - 'deprecated'
+ ticket : 'http://trac.parrot.org/parrot/ticket/2140'
+-
+ name : 'Parrot_compreg function'
+ tags :
+ - 'deprecated'
+ ticket : 'http://trac.parrot.org/parrot/ticket/1879'
View
1  compilers/imcc/imc.h
@@ -457,7 +457,6 @@ struct _imc_info_t {
STRING *error_message; /* The Error message */
/* some values that were global... */
- Namespace *namespace_stack;
SymReg *cur_call;
SymReg *cur_obj;
SymReg *adv_named_id;
View
4 compilers/imcc/imcc.l
@@ -1351,8 +1351,8 @@ imcc_cleanup_input(ARGMOD(imc_info_t * imcc), PIOHANDLE file,
{
if (is_file)
PIO_CLOSE(imcc->interp, file);
- else
- Parrot_str_free_cstring(source_c);
+
+ Parrot_str_free_cstring(source_c);
}
INTVAL
View
36 compilers/imcc/imclexer.c
@@ -78,7 +78,6 @@ typedef int flex_int32_t;
typedef unsigned char flex_uint8_t;
typedef unsigned short int flex_uint16_t;
typedef unsigned int flex_uint32_t;
-#endif /* ! C99 */
/* Limits of integral types. */
#ifndef INT8_MIN
@@ -109,6 +108,8 @@ typedef unsigned int flex_uint32_t;
#define UINT32_MAX (4294967295U)
#endif
+#endif /* ! C99 */
+
#endif /* ! FLEXINT_H */
#ifdef __cplusplus
@@ -182,7 +183,15 @@ typedef void* yyscan_t;
/* Size of default input buffer. */
#ifndef YY_BUF_SIZE
+#ifdef __ia64__
+/* On IA-64, the buffer size is 16k, not 8k.
+ * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
+ * Ditto for the __ia64__ case accordingly.
+ */
+#define YY_BUF_SIZE 32768
+#else
#define YY_BUF_SIZE 16384
+#endif /* __ia64__ */
#endif
/* The state buf must be large enough to hold one state per character in the main buffer.
@@ -2217,7 +2226,7 @@ static int handle_identifier(ARGMOD(imc_info_t *imcc), YYSTYPE *valp, ARGIN(cons
-#line 2221 "compilers/imcc/imclexer.c"
+#line 2230 "compilers/imcc/imclexer.c"
#define INITIAL 0
#define emit 1
@@ -2312,10 +2321,6 @@ int yyget_lineno (yyscan_t yyscanner );
void yyset_lineno (int line_number ,yyscan_t yyscanner );
-int yyget_column (yyscan_t yyscanner );
-
-void yyset_column (int column_no ,yyscan_t yyscanner );
-
/* Macros after this point can all be overridden by user definitions in
* section 1.
*/
@@ -2356,7 +2361,12 @@ static int input (yyscan_t yyscanner );
/* Amount of stuff to slurp up with each read. */
#ifndef YY_READ_BUF_SIZE
+#ifdef __ia64__
+/* On IA-64, the buffer size is 16k, not 8k */
+#define YY_READ_BUF_SIZE 16384
+#else
#define YY_READ_BUF_SIZE 8192
+#endif /* __ia64__ */
#endif
/* Copy whatever the last rule matched to the standard output. */
@@ -2375,7 +2385,7 @@ static int input (yyscan_t yyscanner );
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
{ \
int c = '*'; \
- unsigned n; \
+ size_t n; \
for ( n = 0; n < max_size && \
(c = getc( yyin )) != EOF && c != '\n'; ++n ) \
buf[n] = (char) c; \
@@ -2480,7 +2490,7 @@ YY_DECL
return 0;
}
-#line 2484 "compilers/imcc/imclexer.c"
+#line 2494 "compilers/imcc/imclexer.c"
if ( !yyg->yy_init )
{
@@ -3666,7 +3676,7 @@ YY_RULE_SETUP
#line 708 "compilers/imcc/imcc.l"
ECHO;
YY_BREAK
-#line 3670 "compilers/imcc/imclexer.c"
+#line 3680 "compilers/imcc/imclexer.c"
case YY_STATE_EOF(pod):
case YY_STATE_EOF(cmt1):
case YY_STATE_EOF(cmt2):
@@ -4455,8 +4465,8 @@ YY_BUFFER_STATE yy_scan_string (yyconst char * yystr , yyscan_t yyscanner)
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
* scan from a @e copy of @a bytes.
- * @param bytes the byte buffer to scan
- * @param len the number of bytes in the buffer pointed to by @a bytes.
+ * @param yybytes the byte buffer to scan
+ * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
* @param yyscanner The scanner object.
* @return the newly allocated buffer state object.
*/
@@ -5523,8 +5533,8 @@ imcc_cleanup_input(ARGMOD(imc_info_t * imcc), PIOHANDLE file,
{
if (is_file)
PIO_CLOSE(imcc->interp, file);
- else
- Parrot_str_free_cstring(source_c);
+
+ Parrot_str_free_cstring(source_c);
}
INTVAL
View
77 compilers/imcc/symreg.c
@@ -140,63 +140,6 @@ static void resize_symhash(ARGMOD(imc_info_t * imcc), ARGMOD(SymHash *hsh))
/*
-=item C<void push_namespace(imc_info_t * imcc, const char *name)>
-
-Begins a new namespace in PASM/PIR, named after the given C<name>.
-
-=cut
-
-*/
-
-void
-push_namespace(ARGMOD(imc_info_t * imcc), ARGIN(const char *name))
-{
- ASSERT_ARGS(push_namespace)
- Namespace * const ns = mem_gc_allocate_zeroed_typed(imcc->interp, Namespace);
-
- ns->parent = imcc->namespace_stack;
- ns->name = mem_sys_strdup(name);
- imcc->namespace_stack = ns;
-}
-
-
-/*
-
-=item C<void pop_namespace(imc_info_t * imcc, const char *name)>
-
-Ends the current namespace, popping back to the previous. If the namespace
-stack is empty, throws a syntax error.
-
-=cut
-
-*/
-
-void
-pop_namespace(ARGMOD(imc_info_t * imcc), ARGIN(const char *name))
-{
- ASSERT_ARGS(pop_namespace)
- Namespace * const ns = imcc->namespace_stack;
-
- if (!ns)
- IMCC_fataly(imcc, EXCEPTION_SYNTAX_ERROR, "pop() on empty namespace stack\n");
-
- if (name && !STREQ(name, ns->name))
- IMCC_fataly(imcc, EXCEPTION_SYNTAX_ERROR, "tried to pop namespace(%s), "
- "but top of stack is namespace(%s)\n", name, ns->name);
-
- while (ns->idents) {
- Identifier * const ident = ns->idents;
- ns->idents = ident->next;
- mem_sys_free(ident);
- }
-
- imcc->namespace_stack = ns->parent;
- mem_sys_free(ns);
-}
-
-
-/*
-
=item C<static SymReg * _get_sym_typed(const SymHash *hsh, const char *name, int
t)>
@@ -658,25 +601,14 @@ SymReg *
mk_ident(ARGMOD(imc_info_t * imcc), ARGIN(const char *name), int t, INTVAL type)
{
ASSERT_ARGS(mk_ident)
- char * const fullname = _mk_fullname(imcc, imcc->namespace_stack, name);
SymReg *r = get_sym_by_name(&imcc->cur_unit->hash, name);
if (r && (r->set != t || r->type != type))
IMCC_fataly(imcc, EXCEPTION_SYNTAX_ERROR,
- "syntax error, duplicated IDENTIFIER '%s'\n", fullname);
+ "syntax error, duplicated IDENTIFIER '%s'\n", name);
- r = mk_symreg(imcc, fullname, t);
+ r = mk_symreg(imcc, name, t);
r->type = type;
- if (imcc->namespace_stack) {
- Identifier * const ident = mem_gc_allocate_zeroed_typed(imcc->interp, Identifier);
-
- ident->name = fullname;
- ident->next = imcc->namespace_stack->idents;
- imcc->namespace_stack->idents = ident;
- }
- else
- mem_sys_free(fullname);
-
return r;
}
@@ -1169,7 +1101,8 @@ dup_sym(ARGMOD(imc_info_t * imcc), ARGIN(const SymReg *r))
ASSERT_ARGS(dup_sym)
SymReg * const new_sym = mem_gc_allocate_zeroed_typed(imcc->interp, SymReg);
STRUCT_COPY(new_sym, r);
- new_sym->name = mem_sys_strdup(r->name);
+ if (r->name)
+ new_sym->name = mem_sys_strdup(r->name);
if (r->nextkey)
new_sym->nextkey = dup_sym(imcc, r->nextkey);
@@ -1564,7 +1497,7 @@ find_sym(ARGMOD(imc_info_t * imcc), ARGIN(const char *name))
{
ASSERT_ARGS(find_sym)
if (imcc->cur_unit)
- return _find_sym(imcc, imcc->namespace_stack, &imcc->cur_unit->hash,
+ return _find_sym(imcc, NULL, &imcc->cur_unit->hash,
name);
return NULL;
View
16 compilers/imcc/symreg.h
@@ -384,16 +384,6 @@ SymReg * mk_temp_reg(ARGMOD(imc_info_t * imcc), int t)
__attribute__nonnull__(1)
FUNC_MODIFIES(* imcc);
-void pop_namespace(ARGMOD(imc_info_t * imcc), ARGIN(const char *name))
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- FUNC_MODIFIES(* imcc);
-
-void push_namespace(ARGMOD(imc_info_t * imcc), ARGIN(const char *name))
- __attribute__nonnull__(1)
- __attribute__nonnull__(2)
- FUNC_MODIFIES(* imcc);
-
void store_symreg(ARGMOD(imc_info_t * imcc), ARGMOD(SymReg *r))
__attribute__nonnull__(1)
__attribute__nonnull__(2)
@@ -504,12 +494,6 @@ char * symreg_to_str(ARGIN(const SymReg *s))
, PARROT_ASSERT_ARG(name))
#define ASSERT_ARGS_mk_temp_reg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(imcc))
-#define ASSERT_ARGS_pop_namespace __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(imcc) \
- , PARROT_ASSERT_ARG(name))
-#define ASSERT_ARGS_push_namespace __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
- PARROT_ASSERT_ARG(imcc) \
- , PARROT_ASSERT_ARG(name))
#define ASSERT_ARGS_store_symreg __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
PARROT_ASSERT_ARG(imcc) \
, PARROT_ASSERT_ARG(r))
View
45 config/gen/makefiles/root.in
@@ -506,6 +506,7 @@ INTERP_O_FILES = \
src/packfile/api$(O) \
src/packfile/output$(O) \
src/packfile/pf_items$(O) \
+ src/packfile/segments$(O) \
src/longopt$(O) \
@TEMP_platform_o@ \
@TEMP_atomic_o@ \
@@ -698,6 +699,7 @@ STR_FILES = \
#IF(has_extra_nci_thunks): src/nci/extra_thunks.str \
src/nci/signatures.str \
src/packfile/api.str \
+ src/packfile/segments.str \
src/packfile/object_serialization.str \
src/packfile/pf_items.str \
src/pmc.str \
@@ -1340,7 +1342,7 @@ src/global_setup$(O) : $(PARROT_H_HEADERS) \
src/namespace$(O) : $(PARROT_H_HEADERS) src/namespace.str src/namespace.c \
include/pmc/pmc_sub.h
-src/pmc$(O) : include/pmc/pmc_class.h src/pmc.c \
+src/pmc$(O) : include/pmc/pmc_class.h include/pmc/pmc_integer.h src/pmc.c \
src/pmc.str $(PARROT_H_HEADERS)
src/packfile/object_serialization$(O) : $(PARROT_H_HEADERS) src/packfile/object_serialization.str src/packfile/object_serialization.c
@@ -1431,7 +1433,12 @@ src/gc/variable_size_pool$(O) : $(PARROT_H_HEADERS) \
src/gc/string_gc$(O) : $(PARROT_H_HEADERS) \
src/gc/gc_private.h src/gc/string_gc.c
-src/hll$(O) : $(PARROT_H_HEADERS) src/hll.str $(INC_DIR)/dynext.h src/hll.c
+src/hll$(O) : \
+ $(PARROT_H_HEADERS) \
+ src/hll.str \
+ $(INC_DIR)/dynext.h \
+ include/pmc/pmc_fixedintegerarray.h \
+ src/hll.c
src/core_pmcs$(O) : $(PARROT_H_HEADERS) src/core_pmcs.c
@@ -1597,6 +1604,7 @@ src/multidispatch$(O) : \
src/packfile/api$(O) : \
src/packfile/api.str \
src/packfile/api.c \
+ src/packfile/pf_private.h \
include/pmc/pmc_sub.h \
include/pmc/pmc_key.h \
include/pmc/pmc_parrotlibrary.h \
@@ -1609,7 +1617,17 @@ src/packfile/api$(O) : \
$(PARROT_H_HEADERS) \
$(INC_DIR)/runcore_api.h
-src/packfile/output$(O) : $(PARROT_H_HEADERS) include/pmc/pmc_key.h src/packfile/output.c
+src/packfile/output$(O) : \
+ $(PARROT_H_HEADERS) \
+ include/pmc/pmc_key.h \
+ $(INC_DIR)/dynext.h \
+ $(INC_DIR)/extend_vtable.h \
+ $(INC_DIR)/extend.h \
+ $(INC_DIR)/runcore_api.h \
+ src/packfile/pf_private.h \
+ $(INC_DIR)/embed.h \
+ $(INC_DIR)/oplib/core_ops.h \
+ src/packfile/output.c
src/packfile/pf_items$(O) : \
$(PARROT_H_HEADERS) \
@@ -1617,6 +1635,19 @@ src/packfile/pf_items$(O) : \
src/packfile/pf_items.str \
src/packfile/pf_items.c
+src/packfile/segments$(O) : \
+ src/packfile/segments.str \
+ $(INC_DIR)/oplib/core_ops.h \
+ $(INC_DIR)/dynext.h \
+ $(INC_DIR)/embed.h \
+ $(INC_DIR)/extend.h \
+ $(INC_DIR)/extend_vtable.h \
+ $(PARROT_H_HEADERS) \
+ src/packfile/pf_private.h \
+ include/pmc/pmc_parrotlibrary.h \
+ $(INC_DIR)/runcore_api.h \
+ src/packfile/segments.c
+
src/parrot$(O) : $(GEN_HEADERS)
src/platform/ansi/dl$(O) : src/platform/ansi/dl.c $(PARROT_H_HEADERS)
@@ -1909,10 +1940,10 @@ src/atomic/gcc_x86$(O) : $(PARROT_H_HEADERS) src/atomic/gcc_x86.c
# updates to config.h's version numbers
src/ops/core_ops$(O) : src/ops/core_ops.c \
$(PARROT_H_HEADERS) \
- include/parrot/dynext.h \
- include/parrot/embed.h \
- include/parrot/oplib/core_ops.h \
- include/parrot/runcore_api.h \
+ $(INC_DIR)/dynext.h \
+ $(INC_DIR)/embed.h \
+ $(INC_DIR)/oplib/core_ops.h \
+ $(INC_DIR)/runcore_api.h \
include/pmc/pmc_continuation.h \
include/pmc/pmc_fixedintegerarray.h \
include/pmc/pmc_parrotlibrary.h \
View
4 docs/parrothist.pod
@@ -11,7 +11,7 @@ This document records Parrot source code releases, and their release managers.
Simon Cozens, Jeff Goff, Steve Fink, Leo Toetsch, Chip Salzenberg, Jerry Gay,
Patrick Michaud, Will "coke" Coleda, Matt Diephouse, chromatic, Allison Randal,
Jonathan Worthington, Bob Rogers, Bernhard Schmalhofer, Andrew Whitworth,
-Francois Perrad, Jonathan Leto, Michael Hind.
+Francois Perrad, Jonathan Leto, Michael Hind, James E Keenan.
=head1 THE RECORDS
@@ -129,4 +129,6 @@ Starred release numbers indicate supported releases.
Gerd 3.4.0 2011-May-17 "Pacific Parakeet"
cotto 3.5.0 2011-Jun-21 "Menelaus"
+ jkeenan 3.6.0 * 2011-Jul-19 "Pájaros del Caribe"
+
=cut
View
106 docs/project/release_manager_guide.pod
@@ -77,15 +77,31 @@ should have parrot configured and have run C<make> with the old version:
=item a
-Increment the version number in the following files:
-F<VERSION>, F<MANIFEST.generated>, F<README>.
+=over 4
+
+=item i
+
+Use C<tools/release/update_version.pl> to update the version string in a
+handful of files. If you are running C<update_version.pl> in a directory with
+an existing build, run C<make reconfig> to clear out any generated bytecode
+that was invalidated by the version change. Note that this script takes care
+of modifying generated code, so C<make bootstrap-ops> is no longer necessary
+for the release process.
+
+ perl tools/release/update_version.pl 1.4.1
+
+=item ii
Also update the version number, date, and your name in the
the file: F<docs/parrothist.pod>.
+=item iii
+
Update this file, that is F<release_manager_guide.pod>,
to remove the pending release you're in the middle of.
+=back
+
=item b
Update F<ChangeLog>, F<NEWS> with the new version number and any other
@@ -96,8 +112,8 @@ monthly release.
=item c
-Update release-related information in F<tools/release/release.json>. This will be
-used later when making release announcements. There are a few essential
+Update release-related information in F<tools/release/release.json>. This will
+be used later when making release announcements. There are a few essential
fields that must be updated at each release:
=over 4
@@ -130,27 +146,10 @@ Give yourself credit for the release in F<CREDITS>.
=item f
-This is a bootstrapping step, which requires you to have an existing parrot
-executable available, preferrably from the previous release or pre-release
-development version from the master branch.
-
-You *must* do this with a previous version of Parrot built before you updated
-the VERSION file. You *must* update VERSION before doing this step.
-
-Run C<./ops2c --core> (or C<make bootstrap-ops>, ignoring errors) followed
-by C<make reconfig> and C<make> to update the names of version-specific
-internal functions.
-
-This step uses the older Parrot to create new ops core files and routines
-using the new version number. The released version of Parrot requires these
-files and the new VERSION.
-
-=item g
-
Configure parrot and run C<make distro_tests>, and either fix
what those tests complain about, or fix them so they don't complain.
-=item h
+=item g
If this is a developer release, or there have been no new entries to the
F<PBC_COMPAT> file, skip this step.
@@ -167,12 +166,12 @@ policy. (Those changes are all included within the major version number
increase for the supported release.)
Once you've updated PBC_COMPAT, running C<sh tools/dev/mk_packfile_pbc> if
-necessary, then run C<sh tools/dev/mk_native_pbc> to update the
-pbc files used in the native pbc tests. Note that you must have Parrot already
-built for this to work, and that this script will reconfigure and rebuild
-Parrot with various primitive size options.
+necessary, then run C<sh tools/dev/mk_native_pbc> to update the pbc files used
+in the native pbc tests. Note that you must have Parrot already built for
+this to work, and that this script will reconfigure and rebuild Parrot with
+various primitive size options.
-=item i
+=item h
Make sure everything works:
@@ -194,14 +193,14 @@ When all is well, then commit your changes:
git add file1 file2 ...
git commit -m "awesome and informative commit message"
-Instead of adding files individually, you can also tell C<git commit> that
-you want all modified and deleted files to be in your next commit via the C<-a>
+Instead of adding files individually, you can also tell C<git commit> that you
+want all modified and deleted files to be in your next commit via the C<-a>
flag:
git commit -a -m "awesome and informative commit message"
-Be carefult with C<git commit -a>, it could add files that you do not mean
-to include. Verify that the contents of your most recent commit look sane with:
+Be carefult with C<git commit -a>, it could add files that you do not mean to
+include. Verify that the contents of your most recent commit look sane with:
git show
@@ -263,10 +262,11 @@ Tag the release as "RELEASE_a_b_c", where a.b.c is the version number.
=item 8.
-SSH to ftp-osl.osuosl.org. (If you don't have the necessary login information,
-get it from one of the previous release managers.)
+SSH to ftp-osl.osuosl.org. Note that your ssh public key must be added to list
+of authorized keys before you can log in. Contact a previous release manager
+to get your key added.
- ssh -l <USERNAME> ftp-osl.osuosl.org
+ ssh parrot@ftp-osl.osuosl.org
If the release is a monthly development release, create a new directory under
F<~/ftp/releases/devel>.
@@ -283,9 +283,9 @@ your machine into the new directory.
scp parrot-a.b.c.tar.gz parrot-a.b.c.tar.bz2 \
parrot-a.b.c.tar.gz.sha256 parrot-a.b.c.tar.bz2.sha256 \
- <USERNAME>@ftp-osl.osuosl.org:~/ftp/releases/devel/a.b.c/.
+ parrot@ftp-osl.osuosl.org:~/ftp/releases/devel/a.b.c/.
-(Or using C<wget> or whatever tool you prefer.)
+(Or use whatever tool you prefer.)
When you're finished making changes, run the trigger script to push the changes
out to the FTP mirrors.
@@ -303,10 +303,10 @@ this part easier. You can specify the format of your announcements like so:
./parrot tools/release/crow.pir --type=text
./parrot tools/release/crow.pir --type=html
-Take the screen output and paste it into the application you need. HTML
-works well for use Perl and PerlMonks, and text for the rest. It is not a
-bad idea to add a "highlights" section to draw attention to major new
-features, just be sure to say the same thing in both text and HTML versions.
+Take the screen output and paste it into the application you need. HTML works
+well for use Perl and PerlMonks, and text for the rest. It is not a bad idea
+to add a "highlights" section to draw attention to major new features, just be
+sure to say the same thing in both text and HTML versions.
Be sure to include the SHA1 sums of the tarballs in the release announcement;
They're automatically generated by C<make release>.
@@ -331,9 +331,9 @@ front page.
For the "News" category, select both "Releases" and "News".
-Add tags to the page for significant changes in this release (e.g. "rakudo" for
-significant Rakudo language updates, or "gc" for significant garbage collection
-subsystem updates).
+Add tags to the page for significant changes in this release (e.g. "rakudo"
+for significant Rakudo language updates, or "gc" for significant garbage
+collection subsystem updates).
=item c
@@ -356,13 +356,13 @@ on which type of release this is.
=item f
Update docs.parrot.org. Run "make html" in a release copy of parrot, and save
-the resources/ and html/ directories created in docs/.
-ssh into the parrotvm, and in the
-webroot for docs.parrot.org, expand these into a release directory (e.g.
-1.4.0). in <webroot>/parrot, there are symbolic links for latest, supported,
-and devel. Update the C<latest> symlink to point to your new directory.
-If this is a supported release, also update the C<supported> symlink.
-Do not delete any old copies of the docs, don't update the other symlinks.
+the resources/ and html/ directories created in docs/. ssh into the parrotvm,
+and in the webroot for docs.parrot.org, expand these into a release directory
+(e.g. 1.4.0). in <webroot>/parrot, there are symbolic links for latest,
+supported, and devel. Update the C<latest> symlink to point to your new
+directory. If this is a supported release, also update the C<supported>
+symlink. Do not delete any old copies of the docs, don't update the other
+symlinks.
=back
@@ -403,7 +403,8 @@ Update the wiki frontpage at L<http://trac.parrot.org/parrot/>.
=item e
-Update the Wikipedia entry at L<http://en.wikipedia.org/wiki/Parrot_virtual_machine>.
+Update the Wikipedia entry at
+L<http://en.wikipedia.org/wiki/Parrot_virtual_machine>.
=item f
@@ -462,8 +463,7 @@ L<http://www.google.com/calendar/render?cid=ldhctdamsgfg5a1cord52po9h8@group.cal
Versions with a asterisk (*) are supported releases.
- - Jul 19, 2011 - 3.6* - kid51
- - Aug 16, 2011 - 3.7 - ??
+ - Aug 16, 2011 - 3.7 - coke
- Sep 20, 2011 - 3.8 - soh_cah_toa
- Oct 18, 2011 - 3.9* - dukeleto
- Nov 15, 2011 - 3.10 - ??
View
4 docs/tests.pod
@@ -238,7 +238,7 @@ See L<Test::More> on how to do that.
L<http://qa.perl.org/>
L<http://testanything.org/>
L<http://en.wikipedia.org/wiki/Test_Anything_Protocol>
-F<t/TESTS.STATUS.pod>
-F<t/README>
+L<https://github.com/parrot/parrot/blob/master/t/TESTS.STATUS.pod>
+L<https://github.com/parrot/parrot/blob/master/t/README.pod>
=cut
View
34 examples/benchmarks/overload.pl
@@ -1,34 +0,0 @@
-#! perl
-package Foo;
-
-# Copyright (C) 2004-2007, Parrot Foundation.
-
-use strict;
-use warnings;
-
-use overload '*' => \&my_mul, 'fallback' => 1;
-
-sub new {
- my ( $class, $val ) = @_;
- return bless \$val, $class;
-}
-
-sub my_mul {
- return ${ $_[0] } * ${ $_[1] };
-}
-
-1;
-
-package main;
-my $a = Foo->new(7);
-my $b = Foo->new(6);
-my $r;
-for my $i ( 1 .. 50_000 ) { $r = $a * $b }
-print "$r\n";
-
-# Local Variables:
-# mode: cperl
-# cperl-indent-level: 4
-# fill-column: 100
-# End:
-# vim: expandtab shiftwidth=4:
View
670 ext/nqp-rx/src/stage0/HLL-s0.pir
@@ -993,9 +993,9 @@ An operator precedence parser.
### .include 'gen/hllgrammar-grammar.pir'
.namespace []
-.sub "_block1000" :anon :subid("10_1308626174.53229")
+.sub "_block1000" :anon :subid("10_1309998840.89449")
.annotate 'line', 0
- .const 'Sub' $P1003 = "11_1308626174.53229"
+ .const 'Sub' $P1003 = "11_1309998840.89449"
capture_lex $P1003
.annotate 'line', 1
$P0 = find_dynamic_lex "$*CTXSAVE"
@@ -1005,20 +1005,20 @@ An operator precedence parser.
$P0."ctxsave"()
ctxsave_done:
.annotate 'line', 5
- .const 'Sub' $P1003 = "11_1308626174.53229"
+ .const 'Sub' $P1003 = "11_1309998840.89449"
capture_lex $P1003
$P101 = $P1003()
.annotate 'line', 1
.return ($P101)
- .const 'Sub' $P1235 = "107_1308626174.53229"
+ .const 'Sub' $P1235 = "107_1309998840.89449"
.return ($P1235)
.end
.namespace []
-.sub "" :load :init :subid("post108") :outer("10_1308626174.53229")
+.sub "" :load :init :subid("post108") :outer("10_1309998840.89449")
.annotate 'line', 0
- .const 'Sub' $P1001 = "10_1308626174.53229"
+ .const 'Sub' $P1001 = "10_1309998840.89449"
.local pmc block
set block, $P1001
$P1237 = get_root_global ["parrot"], "P6metaclass"
@@ -1027,83 +1027,83 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "_block1002" :subid("11_1308626174.53229") :outer("10_1308626174.53229")
+.sub "_block1002" :subid("11_1309998840.89449") :outer("10_1309998840.89449")
.annotate 'line', 5
- .const 'Sub' $P1223 = "103_1308626174.53229"
+ .const 'Sub' $P1223 = "103_1309998840.89449"
capture_lex $P1223
- .const 'Sub' $P1218 = "101_1308626174.53229"
+ .const 'Sub' $P1218 = "101_1309998840.89449"
capture_lex $P1218
- .const 'Sub' $P1207 = "98_1308626174.53229"
+ .const 'Sub' $P1207 = "98_1309998840.89449"
capture_lex $P1207
- .const 'Sub' $P1190 = "93_1308626174.53229"
+ .const 'Sub' $P1190 = "93_1309998840.89449"
capture_lex $P1190
- .const 'Sub' $P1185 = "91_1308626174.53229"
+ .const 'Sub' $P1185 = "91_1309998840.89449"
capture_lex $P1185
- .const 'Sub' $P1181 = "89_1308626174.53229"
+ .const 'Sub' $P1181 = "89_1309998840.89449"
capture_lex $P1181
- .const 'Sub' $P1176 = "87_1308626174.53229"
+ .const 'Sub' $P1176 = "87_1309998840.89449"
capture_lex $P1176
- .const 'Sub' $P1171 = "85_1308626174.53229"
+ .const 'Sub' $P1171 = "85_1309998840.89449"
capture_lex $P1171
- .const 'Sub' $P1167 = "83_1308626174.53229"
+ .const 'Sub' $P1167 = "83_1309998840.89449"
capture_lex $P1167
- .const 'Sub' $P1163 = "81_1308626174.53229"
+ .const 'Sub' $P1163 = "81_1309998840.89449"
capture_lex $P1163
- .const 'Sub' $P1159 = "79_1308626174.53229"
+ .const 'Sub' $P1159 = "79_1309998840.89449"
capture_lex $P1159
- .const 'Sub' $P1155 = "77_1308626174.53229"
+ .const 'Sub' $P1155 = "77_1309998840.89449"
capture_lex $P1155
- .const 'Sub' $P1151 = "75_1308626174.53229"
+ .const 'Sub' $P1151 = "75_1309998840.89449"
capture_lex $P1151
- .const 'Sub' $P1147 = "73_1308626174.53229"
+ .const 'Sub' $P1147 = "73_1309998840.89449"
capture_lex $P1147
- .const 'Sub' $P1143 = "71_1308626174.53229"
+ .const 'Sub' $P1143 = "71_1309998840.89449"
capture_lex $P1143
- .const 'Sub' $P1139 = "69_1308626174.53229"
+ .const 'Sub' $P1139 = "69_1309998840.89449"
capture_lex $P1139
- .const 'Sub' $P1132 = "65_1308626174.53229"
+ .const 'Sub' $P1132 = "65_1309998840.89449"
capture_lex $P1132
- .const 'Sub' $P1120 = "63_1308626174.53229"
+ .const 'Sub' $P1120 = "63_1309998840.89449"
capture_lex $P1120
- .const 'Sub' $P1114 = "61_1308626174.53229"
+ .const 'Sub' $P1114 = "61_1309998840.89449"
capture_lex $P1114
- .const 'Sub' $P1109 = "59_1308626174.53229"
+ .const 'Sub' $P1109 = "59_1309998840.89449"
capture_lex $P1109
- .const 'Sub' $P1103 = "57_1308626174.53229"
+ .const 'Sub' $P1103 = "57_1309998840.89449"
capture_lex $P1103
- .const 'Sub' $P1098 = "55_1308626174.53229"
+ .const 'Sub' $P1098 = "55_1309998840.89449"
capture_lex $P1098
- .const 'Sub' $P1092 = "53_1308626174.53229"
+ .const 'Sub' $P1092 = "53_1309998840.89449"
capture_lex $P1092
- .const 'Sub' $P1087 = "51_1308626174.53229"
+ .const 'Sub' $P1087 = "51_1309998840.89449"
capture_lex $P1087
- .const 'Sub' $P1081 = "49_1308626174.53229"
+ .const 'Sub' $P1081 = "49_1309998840.89449"
capture_lex $P1081
- .const 'Sub' $P1076 = "47_1308626174.53229"
+ .const 'Sub' $P1076 = "47_1309998840.89449"
capture_lex $P1076
- .const 'Sub' $P1071 = "45_1308626174.53229"
+ .const 'Sub' $P1071 = "45_1309998840.89449"
capture_lex $P1071
- .const 'Sub' $P1065 = "43_1308626174.53229"
+ .const 'Sub' $P1065 = "43_1309998840.89449"
capture_lex $P1065
- .const 'Sub' $P1059 = "41_1308626174.53229"
+ .const 'Sub' $P1059 = "41_1309998840.89449"
capture_lex $P1059
- .const 'Sub' $P1055 = "40_1308626174.53229"
+ .const 'Sub' $P1055 = "40_1309998840.89449"
capture_lex $P1055
- .const 'Sub' $P1051 = "38_1308626174.53229"
+ .const 'Sub' $P1051 = "38_1309998840.89449"
capture_lex $P1051
- .const 'Sub' $P1047 = "36_1308626174.53229"
+ .const 'Sub' $P1047 = "36_1309998840.89449"
capture_lex $P1047
- .const 'Sub' $P1042 = "34_1308626174.53229"
+ .const 'Sub' $P1042 = "34_1309998840.89449"
capture_lex $P1042
- .const 'Sub' $P1038 = "32_1308626174.53229"
+ .const 'Sub' $P1038 = "32_1309998840.89449"
capture_lex $P1038
- .const 'Sub' $P1034 = "30_1308626174.53229"
+ .const 'Sub' $P1034 = "30_1309998840.89449"
capture_lex $P1034
- .const 'Sub' $P1030 = "28_1308626174.53229"
+ .const 'Sub' $P1030 = "28_1309998840.89449"
capture_lex $P1030
- .const 'Sub' $P1010 = "14_1308626174.53229"
+ .const 'Sub' $P1010 = "14_1309998840.89449"
capture_lex $P1010
- .const 'Sub' $P1004 = "12_1308626174.53229"
+ .const 'Sub' $P1004 = "12_1309998840.89449"
capture_lex $P1004
$P0 = find_dynamic_lex "$*CTXSAVE"
if null $P0 goto ctxsave_done
@@ -1111,16 +1111,16 @@ An operator precedence parser.
unless $I0 goto ctxsave_done
$P0."ctxsave"()
ctxsave_done:
- .const 'Sub' $P1223 = "103_1308626174.53229"
+ .const 'Sub' $P1223 = "103_1309998840.89449"
capture_lex $P1223
.return ($P1223)
- .const 'Sub' $P1232 = "106_1308626174.53229"
+ .const 'Sub' $P1232 = "106_1309998840.89449"
.return ($P1232)
.end
.namespace ["HLL";"Grammar"]
-.sub "ws" :subid("12_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "ws" :subid("12_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1005_tgt
.local int rx1005_pos
@@ -1220,7 +1220,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__ws" :subid("13_1308626174.53229") :method
+.sub "!PREFIX__ws" :subid("13_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -1229,7 +1229,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "termish" :subid("14_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "termish" :subid("14_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1011_tgt
.local int rx1011_pos
@@ -1351,7 +1351,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__termish" :subid("15_1308626174.53229") :method
+.sub "!PREFIX__termish" :subid("15_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -1360,7 +1360,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "term" :subid("16_1308626174.53229") :method
+.sub "term" :subid("16_1309998840.89449") :method
.annotate 'line', 13
$P100 = self."!protoregex"("term")
.return ($P100)
@@ -1368,7 +1368,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__term" :subid("17_1308626174.53229") :method
+.sub "!PREFIX__term" :subid("17_1309998840.89449") :method
.annotate 'line', 13
$P101 = self."!PREFIX__!protoregex"("term")
.return ($P101)
@@ -1376,7 +1376,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "infix" :subid("18_1308626174.53229") :method
+.sub "infix" :subid("18_1309998840.89449") :method
.annotate 'line', 14
$P100 = self."!protoregex"("infix")
.return ($P100)
@@ -1384,7 +1384,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__infix" :subid("19_1308626174.53229") :method
+.sub "!PREFIX__infix" :subid("19_1309998840.89449") :method
.annotate 'line', 14
$P101 = self."!PREFIX__!protoregex"("infix")
.return ($P101)
@@ -1392,7 +1392,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "prefix" :subid("20_1308626174.53229") :method
+.sub "prefix" :subid("20_1309998840.89449") :method
.annotate 'line', 15
$P100 = self."!protoregex"("prefix")
.return ($P100)
@@ -1400,7 +1400,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__prefix" :subid("21_1308626174.53229") :method
+.sub "!PREFIX__prefix" :subid("21_1309998840.89449") :method
.annotate 'line', 15
$P101 = self."!PREFIX__!protoregex"("prefix")
.return ($P101)
@@ -1408,7 +1408,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "postfix" :subid("22_1308626174.53229") :method
+.sub "postfix" :subid("22_1309998840.89449") :method
.annotate 'line', 16
$P100 = self."!protoregex"("postfix")
.return ($P100)
@@ -1416,7 +1416,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__postfix" :subid("23_1308626174.53229") :method
+.sub "!PREFIX__postfix" :subid("23_1309998840.89449") :method
.annotate 'line', 16
$P101 = self."!PREFIX__!protoregex"("postfix")
.return ($P101)
@@ -1424,7 +1424,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "circumfix" :subid("24_1308626174.53229") :method
+.sub "circumfix" :subid("24_1309998840.89449") :method
.annotate 'line', 17
$P100 = self."!protoregex"("circumfix")
.return ($P100)
@@ -1432,7 +1432,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__circumfix" :subid("25_1308626174.53229") :method
+.sub "!PREFIX__circumfix" :subid("25_1309998840.89449") :method
.annotate 'line', 17
$P101 = self."!PREFIX__!protoregex"("circumfix")
.return ($P101)
@@ -1440,7 +1440,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "postcircumfix" :subid("26_1308626174.53229") :method
+.sub "postcircumfix" :subid("26_1309998840.89449") :method
.annotate 'line', 18
$P100 = self."!protoregex"("postcircumfix")
.return ($P100)
@@ -1448,7 +1448,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__postcircumfix" :subid("27_1308626174.53229") :method
+.sub "!PREFIX__postcircumfix" :subid("27_1309998840.89449") :method
.annotate 'line', 18
$P101 = self."!PREFIX__!protoregex"("postcircumfix")
.return ($P101)
@@ -1456,7 +1456,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "term:sym<circumfix>" :subid("28_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "term:sym<circumfix>" :subid("28_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1031_tgt
.local int rx1031_pos
@@ -1528,7 +1528,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__term:sym<circumfix>" :subid("29_1308626174.53229") :method
+.sub "!PREFIX__term:sym<circumfix>" :subid("29_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("circumfix", "")
new $P101, "ResizablePMCArray"
@@ -1538,7 +1538,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "infixish" :subid("30_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "infixish" :subid("30_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1035_tgt
.local int rx1035_pos
@@ -1610,7 +1610,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__infixish" :subid("31_1308626174.53229") :method
+.sub "!PREFIX__infixish" :subid("31_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("infix", "")
new $P101, "ResizablePMCArray"
@@ -1620,7 +1620,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "prefixish" :subid("32_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "prefixish" :subid("32_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1039_tgt
.local int rx1039_pos
@@ -1697,7 +1697,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__prefixish" :subid("33_1308626174.53229") :method
+.sub "!PREFIX__prefixish" :subid("33_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("prefix", "")
new $P101, "ResizablePMCArray"
@@ -1707,7 +1707,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "postfixish" :subid("34_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "postfixish" :subid("34_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1043_tgt
.local int rx1043_pos
@@ -1795,7 +1795,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__postfixish" :subid("35_1308626174.53229") :method
+.sub "!PREFIX__postfixish" :subid("35_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("postcircumfix", "")
$P101 = self."!PREFIX__!subrule"("postfix", "")
@@ -1807,7 +1807,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "nullterm" :subid("36_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "nullterm" :subid("36_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1048_tgt
.local int rx1048_pos
@@ -1872,7 +1872,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__nullterm" :subid("37_1308626174.53229") :method
+.sub "!PREFIX__nullterm" :subid("37_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -1881,7 +1881,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "nullterm_alt" :subid("38_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "nullterm_alt" :subid("38_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1052_tgt
.local int rx1052_pos
@@ -1953,7 +1953,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__nullterm_alt" :subid("39_1308626174.53229") :method
+.sub "!PREFIX__nullterm_alt" :subid("39_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("nullterm", "")
new $P101, "ResizablePMCArray"
@@ -1964,7 +1964,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
.include "except_types.pasm"
-.sub "nulltermish" :subid("40_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "nulltermish" :subid("40_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 33
new $P1057, ['ExceptionHandler'], .CONTROL_RETURN
set_label $P1057, control_1056
@@ -1990,7 +1990,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_delimited" :subid("41_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_delimited" :subid("41_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1060_tgt
.local int rx1060_pos
@@ -2094,7 +2094,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_delimited" :subid("42_1308626174.53229") :method
+.sub "!PREFIX__quote_delimited" :subid("42_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("starter", "")
new $P101, "ResizablePMCArray"
@@ -2104,7 +2104,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_atom" :subid("43_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_atom" :subid("43_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1066_tgt
.local int rx1066_pos
@@ -2211,7 +2211,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_atom" :subid("44_1308626174.53229") :method
+.sub "!PREFIX__quote_atom" :subid("44_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2220,7 +2220,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "decint" :subid("45_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "decint" :subid("45_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1072_tgt
.local int rx1072_pos
@@ -2308,7 +2308,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__decint" :subid("46_1308626174.53229") :method
+.sub "!PREFIX__decint" :subid("46_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2317,7 +2317,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "decints" :subid("47_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "decints" :subid("47_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1077_tgt
.local int rx1077_pos
@@ -2417,7 +2417,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__decints" :subid("48_1308626174.53229") :method
+.sub "!PREFIX__decints" :subid("48_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2426,7 +2426,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "hexint" :subid("49_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "hexint" :subid("49_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1082_tgt
.local int rx1082_pos
@@ -2524,7 +2524,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__hexint" :subid("50_1308626174.53229") :method
+.sub "!PREFIX__hexint" :subid("50_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2533,7 +2533,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "hexints" :subid("51_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "hexints" :subid("51_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1088_tgt
.local int rx1088_pos
@@ -2633,7 +2633,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__hexints" :subid("52_1308626174.53229") :method
+.sub "!PREFIX__hexints" :subid("52_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2642,7 +2642,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "octint" :subid("53_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "octint" :subid("53_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1093_tgt
.local int rx1093_pos
@@ -2740,7 +2740,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__octint" :subid("54_1308626174.53229") :method
+.sub "!PREFIX__octint" :subid("54_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2749,7 +2749,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "octints" :subid("55_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "octints" :subid("55_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1099_tgt
.local int rx1099_pos
@@ -2849,7 +2849,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__octints" :subid("56_1308626174.53229") :method
+.sub "!PREFIX__octints" :subid("56_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2858,7 +2858,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "binint" :subid("57_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "binint" :subid("57_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1104_tgt
.local int rx1104_pos
@@ -2956,7 +2956,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__binint" :subid("58_1308626174.53229") :method
+.sub "!PREFIX__binint" :subid("58_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -2965,7 +2965,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "binints" :subid("59_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "binints" :subid("59_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1110_tgt
.local int rx1110_pos
@@ -3065,7 +3065,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__binints" :subid("60_1308626174.53229") :method
+.sub "!PREFIX__binints" :subid("60_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -3074,7 +3074,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "integer" :subid("61_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "integer" :subid("61_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1115_tgt
.local int rx1115_pos
@@ -3236,7 +3236,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__integer" :subid("62_1308626174.53229") :method
+.sub "!PREFIX__integer" :subid("62_1309998840.89449") :method
.annotate 'line', 5
$P100 = self."!PREFIX__!subrule"("decint", "")
$P101 = self."!PREFIX__!subrule"("decint", "0d")
@@ -3254,7 +3254,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "dec_number" :subid("63_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "dec_number" :subid("63_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1121_tgt
.local int rx1121_pos
@@ -3461,7 +3461,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__dec_number" :subid("64_1308626174.53229") :method
+.sub "!PREFIX__dec_number" :subid("64_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, ""
@@ -3472,7 +3472,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "escale" :subid("65_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "escale" :subid("65_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1133_tgt
.local int rx1133_pos
@@ -3564,7 +3564,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__escale" :subid("66_1308626174.53229") :method
+.sub "!PREFIX__escale" :subid("66_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "e"
@@ -3574,7 +3574,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape" :subid("67_1308626174.53229") :method
+.sub "quote_escape" :subid("67_1309998840.89449") :method
.annotate 'line', 79
$P100 = self."!protoregex"("quote_escape")
.return ($P100)
@@ -3582,7 +3582,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape" :subid("68_1308626174.53229") :method
+.sub "!PREFIX__quote_escape" :subid("68_1309998840.89449") :method
.annotate 'line', 79
$P101 = self."!PREFIX__!protoregex"("quote_escape")
.return ($P101)
@@ -3590,7 +3590,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<backslash>" :subid("69_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<backslash>" :subid("69_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1140_tgt
.local int rx1140_pos
@@ -3666,7 +3666,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<backslash>" :subid("70_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<backslash>" :subid("70_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\\\"
@@ -3675,7 +3675,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<stopper>" :subid("71_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<stopper>" :subid("71_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1144_tgt
.local int rx1144_pos
@@ -3758,7 +3758,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<stopper>" :subid("72_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<stopper>" :subid("72_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\"
@@ -3767,7 +3767,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<bs>" :subid("73_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<bs>" :subid("73_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1148_tgt
.local int rx1148_pos
@@ -3843,7 +3843,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<bs>" :subid("74_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<bs>" :subid("74_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\b"
@@ -3852,7 +3852,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<nl>" :subid("75_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<nl>" :subid("75_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1152_tgt
.local int rx1152_pos
@@ -3928,7 +3928,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<nl>" :subid("76_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<nl>" :subid("76_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\n"
@@ -3937,7 +3937,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<cr>" :subid("77_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<cr>" :subid("77_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1156_tgt
.local int rx1156_pos
@@ -4013,7 +4013,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<cr>" :subid("78_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<cr>" :subid("78_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\r"
@@ -4022,7 +4022,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<tab>" :subid("79_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<tab>" :subid("79_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1160_tgt
.local int rx1160_pos
@@ -4098,7 +4098,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<tab>" :subid("80_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<tab>" :subid("80_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\t"
@@ -4107,7 +4107,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<ff>" :subid("81_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<ff>" :subid("81_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1164_tgt
.local int rx1164_pos
@@ -4183,7 +4183,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<ff>" :subid("82_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<ff>" :subid("82_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\f"
@@ -4192,7 +4192,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "quote_escape:sym<esc>" :subid("83_1308626174.53229") :method :outer("11_1308626174.53229")
+.sub "quote_escape:sym<esc>" :subid("83_1309998840.89449") :method :outer("11_1309998840.89449")
.annotate 'line', 5
.local string rx1168_tgt
.local int rx1168_pos
@@ -4268,7 +4268,7 @@ An operator precedence parser.
.namespace ["HLL";"Grammar"]
-.sub "!PREFIX__quote_escape:sym<esc>" :subid("84_1308626174.53229") :method
+.sub "!PREFIX__quote_escape:sym<esc>" :subid("84_1309998840.89449") :method
.annotate 'line', 5
new $P100, "ResizablePMCArray"
push $P100, "\\e"