├── Makefile.config.in ├── Makefile.in ├── Makefile.mingw ├── README ├── acinclude.m4 ├── aclocal.m4 ├── benchmarks ├── Makefile ├── data │ ├── include │ │ ├── finc.php │ │ ├── finc1.php │ │ ├── finc10.php │ │ ├── finc11.php │ │ ├── finc12.php │ │ ├── finc13.php │ │ ├── finc14.php │ │ ├── finc15.php │ │ ├── finc16.php │ │ ├── finc17.php │ │ ├── finc18.php │ │ ├── finc19.php │ │ ├── finc2.php │ │ ├── finc20.php │ │ ├── finc3.php │ │ ├── finc4.php │ │ ├── finc5.php │ │ ├── finc6.php │ │ ├── finc7.php │ │ ├── finc8.php │ │ ├── finc9.php │ │ ├── inc.php │ │ ├── inc1.php │ │ ├── inc10.php │ │ ├── inc11.php │ │ ├── inc12.php │ │ ├── inc13.php │ │ ├── inc14.php │ │ ├── inc15.php │ │ ├── inc16.php │ │ ├── inc17.php │ │ ├── inc18.php │ │ ├── inc19.php │ │ ├── inc2.php │ │ ├── inc20.php │ │ ├── inc3.php │ │ ├── inc4.php │ │ ├── inc5.php │ │ ├── inc6.php │ │ ├── inc7.php │ │ ├── inc8.php │ │ ├── inc9.php │ │ ├── main.cpt │ │ ├── main00.cpt │ │ ├── main01.cpt │ │ ├── main02.cpt │ │ ├── main03.cpt │ │ ├── main04.cpt │ │ ├── main05.cpt │ │ ├── main06.cpt │ │ ├── main07.cpt │ │ ├── main08.cpt │ │ ├── main09.cpt │ │ ├── main10.cpt │ │ ├── main11.cpt │ │ ├── main12.cpt │ │ ├── main13.cpt │ │ ├── main14.cpt │ │ ├── main15.cpt │ │ ├── main16.cpt │ │ ├── main17.cpt │ │ ├── main18.cpt │ │ ├── main19.cpt │ │ ├── main20.cpt │ │ ├── main21.cpt │ │ ├── main22.cpt │ │ ├── main23.cpt │ │ ├── main24.cpt │ │ ├── main25.cpt │ │ ├── main26.cpt │ │ ├── main27.cpt │ │ ├── main28.cpt │ │ ├── main29.cpt │ │ ├── main30.cpt │ │ ├── main31.cpt │ │ ├── main32.cpt │ │ ├── main33.cpt │ │ ├── main34.cpt │ │ ├── main35.cpt │ │ ├── main36.cpt │ │ ├── main37.cpt │ │ ├── main38.cpt │ │ ├── main39.cpt │ │ ├── main40.cpt │ │ ├── main41.cpt │ │ ├── main42.cpt │ │ ├── main43.cpt │ │ ├── main44.cpt │ │ ├── main45.cpt │ │ ├── main46.cpt │ │ ├── main47.cpt │ │ ├── main48.cpt │ │ ├── main49.cpt │ │ ├── main50.cpt │ │ ├── main51.cpt │ │ ├── main52.cpt │ │ ├── main53.cpt │ │ ├── main54.cpt │ │ ├── main55.cpt │ │ ├── main56.cpt │ │ ├── main57.cpt │ │ ├── main58.cpt │ │ ├── main59.cpt │ │ ├── main60.cpt │ │ ├── main61.cpt │ │ ├── main62.cpt │ │ ├── main63.cpt │ │ ├── main64.cpt │ │ ├── main65.cpt │ │ ├── main66.cpt │ │ ├── main67.cpt │ │ ├── main68.cpt │ │ ├── main69.cpt │ │ ├── main70.cpt │ │ ├── main71.cpt │ │ ├── main72.cpt │ │ ├── main73.cpt │ │ ├── main74.cpt │ │ ├── main75.cpt │ │ ├── main76.cpt │ │ ├── main77.cpt │ │ ├── main78.cpt │ │ ├── main79.cpt │ │ ├── main80.cpt │ │ ├── main81.cpt │ │ ├── main82.cpt │ │ ├── main83.cpt │ │ ├── main84.cpt │ │ ├── main85.cpt │ │ ├── main86.cpt │ │ ├── main87.cpt │ │ ├── main88.cpt │ │ ├── main89.cpt │ │ ├── main90.cpt │ │ ├── main91.cpt │ │ ├── main92.cpt │ │ ├── main93.cpt │ │ ├── main94.cpt │ │ ├── main95.cpt │ │ ├── main96.cpt │ │ ├── main97.cpt │ │ ├── main98.cpt │ │ └── main99.cpt │ ├── pcre-data.xml │ ├── spellcheck │ ├── xml-data-0.xml │ └── xml-data-1.xml ├── regression │ └── file.php └── tests │ ├── ackermann.php │ ├── array.php │ ├── ary.php │ ├── ary2.php │ ├── ary3.php │ ├── btrees.php │ ├── empty.php │ ├── explode.php │ ├── fannkuch.php │ ├── fasta.php │ ├── fibo.php │ ├── gabriel-stak.php │ ├── gabriel-tak.php │ ├── gabriel-takf.php │ ├── gabriel-takl.php │ ├── globals.php │ ├── globals1.php │ ├── hash.php │ ├── hash2.php │ ├── heapsort.php │ ├── hello.php │ ├── include.php │ ├── julia-ppm.php │ ├── mandelbrot.php │ ├── matrix.php │ ├── matrix.php2.php │ ├── multi-dimensional.php │ ├── mysql.php │ ├── mysql2.php │ ├── nestedloop.php │ ├── nsieve-bits.php │ ├── nsieve.php │ ├── num-test.php │ ├── objects.php │ ├── partial-sums.php │ ├── pcre.php │ ├── preg_replace.php │ ├── random.php │ ├── resource-cleanup.php │ ├── reversefile.php │ ├── sieve.php │ ├── spectral-norm.php │ ├── spellcheck.php │ ├── str_replace.php │ ├── strcat.php │ ├── strpos.php │ ├── wc.php │ └── xmlparse.php ├── bigloo-rules.mk ├── bugs ├── Makefile ├── known-failures └── tests │ ├── 1052-2.inc │ ├── 1052-3.inc │ ├── 1580.inc │ ├── bug-id-0000692.php │ ├── bug-id-0000693.php │ ├── bug-id-0000694.php │ ├── bug-id-0000696.php │ ├── bug-id-0000697.php │ ├── bug-id-0000700.php │ ├── bug-id-0000701.php │ ├── bug-id-0000702.php │ ├── bug-id-0000727.php │ ├── bug-id-0000728.php │ ├── bug-id-0000729.php │ ├── bug-id-0000730.php │ ├── bug-id-0000731.php │ ├── bug-id-0000732.php │ ├── bug-id-0000733.php │ ├── bug-id-0000734.php │ ├── bug-id-0000735.php │ ├── bug-id-0000736.php │ ├── bug-id-0000750.php │ ├── bug-id-0000751.php │ ├── bug-id-0000772.php │ ├── bug-id-0000790.php │ ├── bug-id-0000791.php │ ├── bug-id-0000792.php │ ├── bug-id-0000793.php │ ├── bug-id-0000794.php │ ├── bug-id-0000795.php │ ├── bug-id-0000796.php │ ├── bug-id-0000797.php │ ├── bug-id-0000798.php │ ├── bug-id-0000799.php │ ├── bug-id-0000800.php │ ├── bug-id-0000828.php │ ├── bug-id-0000882.php │ ├── bug-id-0000883.php │ ├── bug-id-0000892.php │ ├── bug-id-0000894.php │ ├── bug-id-0000897.php │ ├── bug-id-0000906.php │ ├── bug-id-0000912.php │ ├── bug-id-0000914.php │ ├── bug-id-0000916.php │ ├── bug-id-0000917.php │ ├── bug-id-0000919.php │ ├── bug-id-0000921.php │ ├── bug-id-0000922.php │ ├── bug-id-0000923.php │ ├── bug-id-0000926.php │ ├── bug-id-0000927.php │ ├── bug-id-0000939.php │ ├── bug-id-0000940.php │ ├── bug-id-0000952.php │ ├── bug-id-0000953.php │ ├── bug-id-0000959.php │ ├── bug-id-0000962.php │ ├── bug-id-0000981.php │ ├── bug-id-0000982.php │ ├── bug-id-0000983.php │ ├── bug-id-0000986.php │ ├── bug-id-0000993.php │ ├── bug-id-0000999.php │ ├── bug-id-0001001.php │ ├── bug-id-0001017.php │ ├── bug-id-0001024.php │ ├── bug-id-0001028.php │ ├── bug-id-0001047.php │ ├── bug-id-0001051.php │ ├── bug-id-0001052.php │ ├── bug-id-0001057.php │ ├── bug-id-0001076.php │ ├── bug-id-0001079.php │ ├── bug-id-0001082.php │ ├── bug-id-0001090.php │ ├── bug-id-0001092.php │ ├── bug-id-0001102.php │ ├── bug-id-0001104.php │ ├── bug-id-0001106.php │ ├── bug-id-0001107.php │ ├── bug-id-0001108.php │ ├── bug-id-0001109.php │ ├── bug-id-0001110.php │ ├── bug-id-0001112.php │ ├── bug-id-0001113.php │ ├── bug-id-0001115.php │ ├── bug-id-0001116.php │ ├── bug-id-0001118.php │ ├── bug-id-0001120.php │ ├── bug-id-0001122.php │ ├── bug-id-0001123.php │ ├── bug-id-0001125.php │ ├── bug-id-0001126.php │ ├── bug-id-0001127.php │ ├── bug-id-0001128.php │ ├── bug-id-0001133.php │ ├── bug-id-0001135.php │ ├── bug-id-0001137.php │ ├── bug-id-0001139.php │ ├── bug-id-0001140.php │ ├── bug-id-0001141.php │ ├── bug-id-0001142.php │ ├── bug-id-0001143.php │ ├── bug-id-0001144.php │ ├── bug-id-0001145.php │ ├── bug-id-0001146.php │ ├── bug-id-0001148.php │ ├── bug-id-0001149.php │ ├── bug-id-0001150.php │ ├── bug-id-0001151.php │ ├── bug-id-0001152.php │ ├── bug-id-0001153.php │ ├── bug-id-0001154.php │ ├── bug-id-0001155.php │ ├── bug-id-0001158.php │ ├── bug-id-0001159.php │ ├── bug-id-0001166.php │ ├── bug-id-0001185.php │ ├── bug-id-0001208.php │ ├── bug-id-0001217.php │ ├── bug-id-0001221.php │ ├── bug-id-0001246.php │ ├── bug-id-0001263.php │ ├── bug-id-0001339.php │ ├── bug-id-0001345.php │ ├── bug-id-0001407.php │ ├── bug-id-0001437.php │ ├── bug-id-0001495.php │ ├── bug-id-0001534.php │ ├── bug-id-0001536.php │ ├── bug-id-0001580.php │ ├── bug-id-0001581.php │ ├── bug-id-0001709.php │ ├── bug-id-0001723.php │ ├── bug-id-0001762.php │ ├── bug-id-0001812.php │ ├── bug-id-0001819.php │ ├── bug-id-0001824.php │ ├── bug-id-0001825.php │ ├── bug-id-0001829.php │ ├── bug-id-0001832.php │ ├── bug-id-0001834.php │ ├── bug-id-0001839.php │ ├── bug-id-0001841.php │ ├── bug-id-0001843.php │ ├── bug-id-0001844.php │ ├── bug-id-0001845.php │ ├── bug-id-0001847.php │ ├── bug-id-0001849.php │ ├── bug-id-0001854.php │ ├── bug-id-0001861.php │ ├── bug-id-0001886.php │ ├── bug-id-0001888.php │ ├── bug-id-0001889.php │ ├── bug-id-0001901.php │ ├── bug-id-0001916.php │ ├── bug-id-0001938.php │ ├── bug-id-0001939.php │ ├── bug-id-0001940.php │ ├── bug-id-0001971.php │ ├── bug-id-0002036.php │ ├── bug-id-0002039.php │ ├── bug-id-0002040.php │ ├── bug-id-0002128.php │ ├── bug-id-0002131.php │ ├── bug-id-0002248.php │ ├── bug-id-0002385.php │ ├── bug-id-0002492.php │ ├── bug-id-0002565.php │ ├── bug-id-0002611.php │ ├── bug-id-0002765.php │ ├── bug-id-0002792.php │ ├── bug-id-0002793.php │ ├── bug-id-0003085.php │ ├── bug-id-0003090.php │ ├── bug-id-0003091.php │ ├── bug-id-0003109.php │ ├── bug-id-0003160.php │ ├── bug-id-0003162.php │ ├── bug-id-0003165.php │ ├── bug-id-0003166.php │ ├── bug-id-0003191.php │ ├── bug-id-0003207.php │ ├── bug-id-0003209.php │ ├── bug-id-0003210.php │ ├── bug-id-0003212.php │ ├── bug-id-0003213.php │ ├── bug-id-0003223.php │ ├── bug-id-0003224.php │ ├── bug-id-0003226.php │ ├── bug-id-0003227.php │ ├── bug-id-0003230.php │ ├── bug-id-0003250.php │ ├── bug-id-0003251.php │ ├── bug-id-0003256.php │ ├── bug-id-0003480.php │ ├── bug-id-0003497.php │ └── strings_english.inc ├── compiler ├── Makefile ├── ast.scm ├── basic-blocks.scm ├── cfa.scm ├── commandline.scm ├── config.scm.in ├── containers.scm ├── debugger.h ├── debugger.scm ├── declare.scm ├── driver.scm ├── dynloader.scm ├── evaluate.scm ├── generate.scm ├── include.scm ├── lexers.scm ├── make-lib.scm ├── parser.scm ├── pdb.scm ├── registry.c ├── show-copies.scm ├── synhighlight.scm ├── tags.scm ├── target.scm └── tcc-binding.scm ├── config.guess ├── config.sub ├── configure ├── configure.in ├── doc ├── COMPILER-LICENSE ├── Makefile ├── RUNTIME-LICENSE ├── api │ ├── HOWTO │ ├── Makefile │ └── api-main.texi ├── examples │ └── cl-project │ │ ├── Makefile │ │ ├── inc1.php │ │ ├── inc2.php │ │ └── main.php ├── glade-tutorial │ ├── Makefile │ ├── glade-tutorial.texinfo │ ├── mp3-manager.glade │ ├── mp3-manager.php │ └── song-details.glade ├── manual │ ├── Makefile │ ├── fdl.texi │ └── the_roadsend_php_compiler.texi ├── pcc.conf.sample ├── pcc.conf.var.in ├── resources │ ├── apache-request-flow.dia │ ├── app-runtime-include.dia │ ├── app-runtime-include.png │ ├── arg-1.png │ ├── breakpoint-1.png │ ├── breakpoint-2.png │ ├── call-stack-1.png │ ├── code-browse-1.png │ ├── compile-vs-interpret.dia │ ├── compile-vs-interpret.png │ ├── debug-toolbar-1.png │ ├── deploy-1.png │ ├── editorc-1.png │ ├── editorc-2.png │ ├── editorc-3.png │ ├── editorc-4.png │ ├── file-browse-1.png │ ├── idec-1.png │ ├── idec-2.png │ ├── idec-3.png │ ├── idec-4.png │ ├── idec-5.png │ ├── idec-6.png │ ├── idec-7.png │ ├── interp-lib-include.dia │ ├── interp-lib-include.png │ ├── lic-1.png │ ├── lic-2.png │ ├── local-vars-1.png │ ├── main-1.png │ ├── multi-source-app.dia │ ├── multi-source-app.png │ ├── pfile-browse-1.png │ ├── projc-comp-options.png │ ├── projc-files.png │ ├── projc-lib-creation.png │ ├── projc-libs.png │ ├── projc-linked.png │ ├── projc-micro.png │ ├── projc-options.png │ ├── projc-search-paths.png │ ├── projc-webapp.png │ ├── toolbar-1.png │ ├── using-libs.dia │ └── using-libs.png └── tutorial │ ├── Makefile │ ├── deploy-tutorial.texinfo │ ├── phpbb-tutorial.texinfo │ ├── project-properties.png │ └── scribble-source-entered.png ├── dotest.scm ├── install-runtime.sh ├── install.sh ├── packages ├── Makefile ├── README ├── deb │ ├── Makefile │ ├── roadsend-pcc-prereqs.control.template │ ├── roadsend-pcc-prereqs.postinst.template │ ├── roadsend-pcc-prereqs.postrm.template │ ├── roadsend-pcc-runtime.control.template │ ├── roadsend-pcc-runtime.postinst.template │ ├── roadsend-pcc-runtime.postrm.template │ ├── roadsend-pcc-runtime.preinst.template │ ├── roadsend-pcc.control.template │ ├── roadsend-pcc.postinst.template │ ├── roadsend-pcc.postrm.template │ └── roadsend-pcc.preinst.template ├── packages.mk ├── rpm │ ├── Makefile │ ├── install-compiler-rpm.sh.template │ ├── install-runtime-rpm.sh.template │ ├── roadsend-pcc-prereqs.spec.template │ ├── roadsend-pcc-runtime.spec.template │ └── roadsend-pcc.spec.template ├── scripts │ ├── install-bigloo-2.6c.sh │ ├── install-bigloo-2.6d.sh │ ├── install-bigloo-2.6e.sh │ ├── install-bigloo-2.6f.sh │ ├── install-bigloo-2.9a.sh │ ├── install-bigloo-lib-0.20.sh │ ├── install-bigloo-lib-0.21.sh │ ├── make-installer-script.sh │ ├── makeself │ │ ├── COPYING │ │ ├── README │ │ ├── TODO │ │ ├── makeself-header.sh │ │ ├── makeself.lsm │ │ └── makeself.sh │ └── replace-tag-with-file.sh ├── self │ ├── Makefile │ ├── install-compiler.sh.template │ └── install-runtime.sh.template └── windows │ ├── README.txt │ ├── SetEnv.exe │ ├── pcc.conf.tmpl │ ├── pccFE.ini.tmpl │ ├── pccpi.bat │ ├── pccpi.sh │ ├── projects │ ├── cl-use-lib │ │ ├── cl-use-lib.redb │ │ ├── cl-use-lib.tags │ │ └── main.php │ ├── fcgi-project │ │ ├── fcgi-project.redb │ │ ├── fcgi-project.tags │ │ └── index.php │ ├── glade-project │ │ ├── glade-project.rc │ │ ├── glade-project.redb │ │ ├── glade-project.tags │ │ ├── mp3-manager.glade │ │ ├── mp3-manager.php │ │ └── song-details.glade │ ├── gtk-project │ │ ├── gtk-main.php │ │ ├── gtk-project.rc │ │ ├── gtk-project.redb │ │ └── gtk-project.tags │ ├── hello │ │ ├── hello.rc │ │ ├── hello.redb │ │ ├── hello.tags │ │ ├── inc.php │ │ └── main.php │ ├── lib-project │ │ ├── lib-project.redb │ │ ├── lib-project.tags │ │ ├── lib1.php │ │ ├── lib2.php │ │ └── lib3.php │ ├── micro-project │ │ ├── home │ │ │ └── main.php │ │ ├── images │ │ │ └── reSmLogo.png │ │ ├── index.php │ │ ├── info.php │ │ ├── mhttpd_startup.inc │ │ ├── micro-project.rc │ │ ├── micro-project.redb │ │ └── micro-project.tags │ ├── php_file.ico │ └── win-project │ │ ├── main.php │ │ ├── win-project.redb │ │ └── win-project.tags │ └── roadsend-compiler.iss ├── php-macros.scm ├── runtime ├── Makefile ├── blib.scm ├── builtin-classes.scm ├── c-runtime.c ├── config.h.in ├── constants.scm ├── containers.scm ├── core-builtins.scm ├── dynarray.scm ├── environments.scm ├── ext │ ├── Makefile │ ├── Makefile.skel │ ├── curl │ │ ├── Makefile │ │ ├── curl-bindings.scm │ │ ├── curl-c-bindings.scm │ │ ├── curl-headers.h │ │ ├── make-lib.scm │ │ ├── other-tests │ │ │ ├── dumppost.php │ │ │ ├── foo.bin │ │ │ ├── foo.txt │ │ │ ├── formpost.php │ │ │ └── ftpupload.php │ │ ├── php-curl.sch │ │ ├── php-curl.scm │ │ └── tests │ │ │ ├── basic.php │ │ │ ├── callbacks.php │ │ │ ├── curl-file-wrapper.php │ │ │ ├── curlerrors.php │ │ │ ├── curlssl.php │ │ │ ├── getinfo.php │ │ │ └── getpost.php │ ├── extensions.mk │ ├── gtk │ │ ├── Makefile │ │ ├── cigloo │ │ │ ├── glade.scm │ │ │ ├── gtk.scm │ │ │ ├── gtkscintilla.scm │ │ │ └── signals.scm │ │ ├── custom-properties.scm │ │ ├── define-classes.scm │ │ ├── defs │ │ │ ├── gdk.defs │ │ │ ├── generate.scm │ │ │ ├── gtk-extrafuncs.defs │ │ │ ├── gtk.defs │ │ │ ├── libglade.defs │ │ │ └── scintilla.defs │ │ ├── design │ │ ├── gdk-enums.scm │ │ ├── gtk-enums.scm │ │ ├── gtk-foreign-types.defs │ │ ├── gtk-static.scm │ │ ├── gtk-style.scm │ │ ├── make-lib.scm │ │ ├── other-tests │ │ │ ├── gtk.php │ │ │ ├── hello-world.php │ │ │ └── scribble.php │ │ ├── php-gdk.scm │ │ ├── php-glade.scm │ │ ├── php-gtk-common.scm │ │ ├── php-gtk-macros.sch │ │ ├── php-gtk-overrides.scm │ │ ├── php-gtk-signals.scm │ │ ├── php-gtk.init │ │ ├── php-gtk.sch │ │ ├── php-gtk.scm │ │ ├── php-gtkscintilla.scm │ │ └── tests │ │ │ ├── clist.php │ │ │ ├── flags.php │ │ │ ├── gdkcolor.php │ │ │ ├── get-set-data.php │ │ │ ├── idle.php │ │ │ ├── style.php │ │ │ └── timeout.php │ ├── gtk2 │ │ ├── Makefile │ │ ├── cigloo │ │ │ ├── glade.scm │ │ │ ├── gtk.scm │ │ │ ├── gtkscintilla.scm │ │ │ └── signals.scm │ │ ├── custom-properties.scm │ │ ├── define-classes.scm │ │ ├── defs │ │ │ ├── atk-types.defs │ │ │ ├── atk.defs │ │ │ ├── gdk-types.defs │ │ │ ├── gdk.defs │ │ │ ├── generate.scm │ │ │ ├── gtk-extrafuncs.defs │ │ │ ├── gtk-types.defs │ │ │ ├── gtk.defs │ │ │ ├── libglade.defs │ │ │ ├── pango-types.defs │ │ │ ├── pango.defs │ │ │ └── scintilla.defs │ │ ├── gdk-enums.scm │ │ ├── gtk-enums.scm │ │ ├── gtk-static.scm │ │ ├── gtk-style.scm │ │ ├── make-lib.scm │ │ ├── other-tests │ │ │ ├── hello.php │ │ │ └── scribble.php │ │ ├── php-gdk.scm │ │ ├── php-glade.scm │ │ ├── php-gtk-common.scm │ │ ├── php-gtk-macros.sch │ │ ├── php-gtk-overrides.scm │ │ ├── php-gtk-signals.scm │ │ ├── php-gtk.scm │ │ ├── php-gtk2.sch │ │ ├── php-gtkscintilla.scm │ │ └── tests │ │ │ └── enums.php │ ├── mysql │ │ ├── Makefile │ │ ├── README │ │ ├── c-bindings.defs │ │ ├── c-bindings.scm │ │ ├── make-lib.scm │ │ ├── php-mysql.sch │ │ ├── php-mysql.scm │ │ ├── schema.sql │ │ ├── tests │ │ │ ├── createdb.php │ │ │ ├── dataseek.php │ │ │ ├── list_dbs.php │ │ │ ├── list_fields.php │ │ │ ├── mysql_escape_string.php │ │ │ ├── mysql_field_name.php │ │ │ ├── mysql_result.php │ │ │ ├── openclose.php │ │ │ ├── select.php │ │ │ └── type_name_len_flags.php │ │ └── windows-mysql.h │ ├── odbc │ │ ├── Makefile │ │ ├── make-lib.scm │ │ ├── odbc-bindings.scm │ │ ├── odbc-utils.c │ │ ├── odbc-utils.h │ │ ├── php-odbc.sch │ │ ├── php-odbc.scm │ │ ├── tests │ │ │ ├── commit-rollback.php │ │ │ ├── connect.inc │ │ │ ├── connectclose.php │ │ │ ├── dsnconnect.php │ │ │ ├── errormsg.php │ │ │ ├── exec.php │ │ │ ├── fetches.php │ │ │ ├── fetchrow.php │ │ │ ├── gettypeinfo.php │ │ │ ├── link-info-functions.php │ │ │ ├── linkoptions.php │ │ │ ├── prepare-execute.php │ │ │ └── resultoptions.php │ │ └── windows-odbc.h │ ├── pcc-win │ │ ├── Makefile │ │ ├── make-lib.scm │ │ ├── pcc-win.h │ │ ├── pcc-win.sch │ │ ├── registry.c │ │ ├── tests │ │ │ ├── messagebox.php │ │ │ ├── registry.php │ │ │ └── shellexec.php │ │ └── windows.scm │ ├── pcre │ │ ├── Makefile │ │ ├── README │ │ ├── c-bindings.defs │ │ ├── c-bindings.scm │ │ ├── make-lib.scm │ │ ├── php-pcre.c │ │ ├── php-pcre.h │ │ ├── php-pcre.sch │ │ ├── scm-pcre.scm │ │ └── tests │ │ │ ├── callback-bug.php │ │ │ ├── pcre-1.php │ │ │ ├── pcre-2.php │ │ │ ├── pcre-3.php │ │ │ ├── pcre-4.php │ │ │ ├── pcre-5.php │ │ │ ├── pcre-6.php │ │ │ └── pcre-7.php │ ├── phpoo-extension.sch │ ├── skeleton │ │ ├── Makefile │ │ ├── c-bindings.scm │ │ ├── make-lib.scm │ │ ├── php-skeleton.scm │ │ ├── skeleton.sch │ │ └── tests │ │ │ └── skeleton.php │ ├── sockets │ │ ├── Makefile │ │ ├── c-bindings.scm │ │ ├── make-lib.scm │ │ ├── php-sockets.sch │ │ ├── php-sockets.scm │ │ └── tests │ │ │ ├── create-close.php │ │ │ └── http-get.php │ ├── sqlite │ │ ├── Makefile │ │ ├── encode.c │ │ ├── encode.h │ │ ├── make-lib.scm │ │ ├── php-sqlite.sch │ │ ├── php-sqlite.scm │ │ ├── sqlite-utils.c │ │ ├── sqlite-utils.h │ │ ├── sqlite3-bindings.scm │ │ └── tests │ │ │ ├── callbacks.php │ │ │ ├── exec.php │ │ │ ├── misc.php │ │ │ ├── oo-api.php │ │ │ ├── openclose.php │ │ │ ├── query.php │ │ │ ├── s_common.inc │ │ │ ├── unbuf-query.php │ │ │ ├── zcallbacks.php │ │ │ └── ztests.php │ ├── standard │ │ ├── Makefile │ │ ├── README │ │ ├── c-files.c │ │ ├── crc.c │ │ ├── crc.h │ │ ├── data │ │ │ ├── bottom.gif │ │ │ ├── bottom.jpg │ │ │ └── bottom.png │ │ ├── make-lib.scm │ │ ├── mt_rand.c │ │ ├── mt_rand.h │ │ ├── network.c │ │ ├── network.h │ │ ├── pack.scm │ │ ├── parsedate.scm │ │ ├── php-array.scm │ │ ├── php-core.scm │ │ ├── php-eregexp.scm │ │ ├── php-files.scm │ │ ├── php-image.scm │ │ ├── php-math.scm │ │ ├── php-network.scm │ │ ├── php-output-control.scm │ │ ├── php-posix.scm │ │ ├── php-proc.scm │ │ ├── php-session.scm │ │ ├── php-sha1.scm │ │ ├── php-std.sch │ │ ├── php-streams.sch │ │ ├── php-streams.scm │ │ ├── php-strings.scm │ │ ├── php-system.c │ │ ├── php-system.h │ │ ├── php-time.scm │ │ ├── php-var-cache.scm │ │ ├── php-variable.scm │ │ ├── posix-c-bindings.scm │ │ ├── posix-headers.h │ │ ├── re-extensions.scm │ │ ├── sha1.c │ │ ├── sha1.h │ │ ├── soundex.scm │ │ ├── streams-c-bindings.h │ │ ├── streams-c-bindings.scm │ │ ├── streams.c │ │ ├── streams.h │ │ ├── strnatcmp.c │ │ ├── strnatcmp.h │ │ ├── tests │ │ │ ├── array.php │ │ │ ├── array2.php │ │ │ ├── array_merge.php │ │ │ ├── array_sorting.php │ │ │ ├── array_splice.php │ │ │ ├── array_unique.php │ │ │ ├── backtrace.php │ │ │ ├── blocking.php │ │ │ ├── chmod.php │ │ │ ├── chunk_split.php │ │ │ ├── core.php │ │ │ ├── crc32.php │ │ │ ├── crypt-md5.php │ │ │ ├── dirs.php │ │ │ ├── ereg-replace.php │ │ │ ├── ereg.php │ │ │ ├── eregexp.php │ │ │ ├── eregexpi.php │ │ │ ├── error-handler.php │ │ │ ├── exitcode.php │ │ │ ├── explode-implode.php │ │ │ ├── explode.php │ │ │ ├── extract.php │ │ │ ├── exts.php │ │ │ ├── files.php │ │ │ ├── files2.php │ │ │ ├── fsockopen.php │ │ │ ├── glob.php │ │ │ ├── html.php │ │ │ ├── images.php │ │ │ ├── ip.php │ │ │ ├── is_readable.php │ │ │ ├── isset.php │ │ │ ├── math.php │ │ │ ├── minmax.php │ │ │ ├── network.php │ │ │ ├── nl2br.php │ │ │ ├── number_format.php │ │ │ ├── ord.php │ │ │ ├── output-control.php │ │ │ ├── pack.php │ │ │ ├── parseini.php │ │ │ ├── posix.php │ │ │ ├── printf.php │ │ │ ├── procs.php │ │ │ ├── prog-exec.php │ │ │ ├── roadsend-socket.php │ │ │ ├── serialize-refs.php │ │ │ ├── serialize.php │ │ │ ├── session1.php │ │ │ ├── session2.php │ │ │ ├── session3.php │ │ │ ├── setlocale.php │ │ │ ├── shell_exec.php │ │ │ ├── similar-text.php │ │ │ ├── soundex.php │ │ │ ├── split.php │ │ │ ├── str_pad.php │ │ │ ├── str_replace.php │ │ │ ├── streams.php │ │ │ ├── strings.php │ │ │ ├── strip_tags.php │ │ │ ├── strpos.php │ │ │ ├── strstr.php │ │ │ ├── strtok.php │ │ │ ├── strtotime.php │ │ │ ├── strtr.php │ │ │ ├── substr.php │ │ │ ├── time.php │ │ │ ├── trims.php │ │ │ ├── unserialize-error.php │ │ │ ├── urls.php │ │ │ ├── utf.php │ │ │ ├── var_export.php │ │ │ ├── variables.php │ │ │ ├── version_compare.php │ │ │ ├── zadd-and-stripcslashes.php │ │ │ └── zadd-and-stripslashes.php │ │ ├── time-c-bindings.scm │ │ ├── url.scm │ │ ├── windows-flock.c │ │ ├── windows-flock.h │ │ ├── windows-streams.h │ │ ├── windows-time.c │ │ └── windows-time.h │ └── xml │ │ ├── Makefile │ │ ├── README │ │ ├── c-bindings.defs │ │ ├── c-bindings.scm │ │ ├── make-lib.scm │ │ ├── php-xml.init │ │ ├── php-xml.sch │ │ ├── scm-xml.c │ │ ├── scm-xml.h │ │ ├── tests │ │ ├── data.xml │ │ ├── data2.xml │ │ ├── moldb.xml │ │ ├── xml-1.php │ │ ├── xml-2.php │ │ ├── xml-3.php │ │ ├── xml-4.php │ │ └── xml-5.php │ │ ├── xml-additional-c-bindings.scm │ │ ├── xml.sch │ │ └── xml.scm ├── extended-streams.scm ├── finalizers.scm ├── grasstable.scm ├── make-lib.scm ├── opaque-math-binding.scm ├── opaque-math.c ├── opaque-math.h ├── opaque-piddle.h ├── output-buffering.scm ├── pcc_snprintf.c ├── pcc_snprintf.h ├── php-errors.scm ├── php-ext │ ├── Makefile │ ├── pdo │ │ ├── Makefile.in │ │ ├── pdo_class.php.in │ │ ├── pdo_init.php │ │ ├── pdo_mysql.php │ │ ├── pdo_sqlite.php │ │ └── tests │ │ │ └── basic.php │ └── php-extensions.mk.in ├── php-functions.scm ├── php-hash-helper.c ├── php-hash.scm ├── php-ini.scm ├── php-object.scm ├── php-operators.scm ├── php-runtime.sch ├── php-runtime.scm ├── php-types.scm ├── resources.scm ├── signatures.scm ├── url-rewriter.scm ├── utils.scm └── web-var-cache.scm ├── sa-tests ├── Makefile ├── doc │ └── test_file.txt ├── pcc-test.conf.in ├── run-tests.php └── tests │ ├── compile01.phpt │ ├── compile02.phpt │ ├── compile03.phpt │ ├── extensions01.phpt │ ├── extensions02.phpt │ ├── extensions03.phpt │ ├── extensions05.phpt │ ├── fcgi01.phpt │ ├── fcgi02.phpt │ ├── interpret01.phpt │ ├── library01.phpt │ ├── library01v.phpt │ ├── library02.phpt │ ├── library02v.phpt │ ├── micro01.phpt │ ├── micro02.phpt │ └── template ├── tests ├── 023-2.inc ├── ackermann.out ├── ackermann.php ├── ary3.out ├── ary3.php ├── autoload-member.php ├── autoload-static.php ├── bitwise.php ├── callback.php ├── class-case.php ├── class-constants.php ├── class-functions.php ├── class-parent.php ├── class-props.php ├── class-static-members.php ├── closingtag.php ├── constants.php ├── constructor.php ├── declare-order.php ├── destructors.php ├── dollardollar.php ├── dotest.sh ├── eachlist.php ├── equality.php ├── escapingtest.php ├── exceptions.php ├── expr-in-stringcurlies.php ├── ext-prop-order.php ├── extends.php ├── fibo.out ├── fibo.php ├── float-output.php ├── foreach.php ├── forlooptest.php ├── function-by-name.php ├── funorder.php ├── globals.php ├── hash.php ├── hash1.php ├── hello.out ├── hello.php ├── implicit_copy.php ├── includetest-once.inc ├── includetest.inc ├── instanceof.php ├── logical.php ├── magic-constants.php ├── min-max-nums.php ├── ndim.php ├── numbers.php ├── obj-arrayaccess.php ├── obj-clone.php ├── obj-iteration.php ├── object-assignment.php ├── object.php ├── opendir.php ├── overloading.php ├── phpbug.php ├── phptest.php ├── prepostcrement.php ├── printtag.php ├── ref.php ├── ref1.php ├── ref2.php ├── ref3.php ├── refarg-in-env.php ├── refhash.php ├── remarkably_broken.php ├── resources.php ├── retval-methodcall.php ├── shared-environment.inc ├── shared-environment.php ├── shutdown_function.php ├── simple-assignment.php ├── simple-string.php ├── singleton.php ├── smErrors.inc ├── smObject.inc ├── smObject.php ├── sort.php ├── static-methods.php ├── string-ref.php ├── stringcurlies.php ├── stringtest.php ├── superglobal_bindings.php ├── tags.php ├── typecasts.php ├── unset.php ├── varargs.php ├── variable-arity.php ├── varvararg.php ├── versions.php ├── zclasses-test.php ├── zclasses.inc ├── zcomplex_switch.php ├── zcreate_function.php ├── zdirname.php ├── zdo_while.php ├── zerrors.php ├── zerrors2.php ├── zeval.php ├── zeval1.php ├── zfun_inside_eval.php ├── zfunction_call_with_global_and_static_vars.php ├── zfunction_falling.php ├── zheyheyhey.php ├── zinclude.php ├── zlooped_regression.php ├── zmean_recursion.php ├── znested_functions.php ├── znested_if_elseif_else.php ├── zrecursive_function.php ├── zregression-1.inc ├── zregression-2.inc ├── zregression.php ├── zsimple_if_condition.php ├── zsimple_if_else.php ├── zsimple_if_elsif_else.php ├── zsimple_switch.php ├── zsimple_while_loop.php ├── zstack_after_return.php ├── zstring_scanner.php ├── zswitch2.php ├── zswitch3.php └── zthis.php ├── tidbits ├── copy-strings.scm ├── function-example │ ├── fun.c │ ├── fun.h │ └── main.scm └── libinclude-test │ ├── smexample │ ├── BUILD │ ├── admin │ │ └── common.inc │ ├── home │ │ └── index.php │ └── redist │ │ └── pear │ │ └── apear.php │ └── useit │ ├── BUILD │ ├── useit │ └── useit.php ├── tools ├── Makefile ├── c-interface │ ├── Makefile │ ├── c-glue.c │ ├── c-interface.scm │ ├── c-test.c │ └── re_runtime.h ├── libwebserver │ ├── Authors │ ├── COPYRIGHT │ ├── ChangeLog │ ├── Makefile.in │ ├── Todo │ ├── Win32 │ │ ├── dirent.c │ │ ├── dirent.h │ │ ├── flock.c │ │ ├── flock.h │ │ ├── help │ │ │ ├── help.cfg │ │ │ ├── help.dsp │ │ │ ├── help.ico │ │ │ ├── help.rc │ │ │ ├── mime.types │ │ │ └── resource.h │ │ ├── libwebserver.dsp │ │ └── libwebserver.dsw │ ├── bugs │ ├── config.guess │ ├── config.sub │ ├── configure │ ├── configure.in │ ├── examples │ │ ├── Makefile │ │ ├── Makefile.in │ │ ├── SoundRecorder │ │ │ ├── Makefile │ │ │ ├── include │ │ │ │ ├── debug.h │ │ │ │ ├── soundbuffers.h │ │ │ │ ├── soundcard.h │ │ │ │ └── soundmixer.h │ │ │ └── src │ │ │ │ ├── Makefile │ │ │ │ ├── main.c │ │ │ │ ├── soundbuffers.c │ │ │ │ ├── soundcard.c │ │ │ │ └── soundmixer.c │ │ ├── cgi-bin │ │ │ ├── index.cgi │ │ │ ├── simple.cgi │ │ │ └── simple1.cgi │ │ ├── cgi.c │ │ ├── demo.c │ │ ├── foo-cert.pem │ │ └── packetmounter.c │ ├── help.html │ │ ├── examples.html │ │ ├── functions.html │ │ ├── info.html │ │ └── security.html │ ├── help │ │ ├── Makefile │ │ ├── Makefile.in │ │ ├── engine.h │ │ ├── examples.h │ │ ├── functions.h │ │ ├── help.c │ │ ├── help.cfg │ │ ├── info.h │ │ ├── makeheader.bat │ │ ├── mime.types │ │ └── security.h │ ├── include │ │ ├── client.h │ │ ├── clientinfo.h │ │ ├── config.h.in │ │ ├── debug.h │ │ ├── error.h │ │ ├── fnmatch.h │ │ ├── gethandler.h │ │ ├── logo.h │ │ ├── memory.h │ │ ├── module.h │ │ ├── outgif.h │ │ ├── outstream.h │ │ ├── server.h │ │ ├── socket.h │ │ ├── utils.h │ │ ├── web_server.h │ │ └── weblog.h │ ├── install-sh │ ├── libwebserver-config.in │ ├── license │ ├── project │ ├── regards │ ├── src │ │ ├── Makefile.in │ │ ├── client.c │ │ ├── clientinfo.c │ │ ├── dirent.c │ │ ├── error.c │ │ ├── flock.c │ │ ├── fnmatch.c │ │ ├── gethandler.c │ │ ├── memory.c │ │ ├── module.c │ │ ├── outgif.c │ │ ├── outstream.c │ │ ├── server.c │ │ ├── socket.c │ │ ├── utils.c │ │ └── weblog.c │ └── tools │ │ ├── checkpid │ │ ├── data2header.c │ │ ├── data2header.exe │ │ ├── httptest.pl │ │ ├── myvc_install.bat │ │ └── win2unix.sh ├── profiler │ ├── Makefile │ ├── README │ ├── bigloorc │ ├── build.sh │ ├── make-lib.scm │ ├── profiler-c-bindings.scm │ ├── profiler.init │ ├── profiler.scm │ ├── windows-time.c │ └── windows-time.h ├── readline │ ├── Makefile │ ├── history.scm │ ├── make-lib.scm │ └── readline.scm └── shortpath │ ├── Makefile │ └── shortpath.c ├── webconnect ├── Makefile.in ├── apache1 │ ├── Makefile │ ├── apache.scm │ ├── apache_cookie.c │ ├── apache_cookie.h │ ├── apache_multipart_buffer.c │ ├── apache_multipart_buffer.h │ ├── apache_request.c │ ├── apache_request.h │ ├── mod_pcc.c │ └── windows-apache.h ├── apache2 │ ├── Makefile │ ├── apache2.scm │ ├── apache_cookie.c │ ├── apache_cookie.h │ ├── apache_multipart_buffer.c │ ├── apache_multipart_buffer.h │ ├── apache_request.c │ ├── apache_request.h │ ├── mod_pcc2.c │ ├── win32 │ │ ├── apr.h │ │ ├── howto.txt │ │ ├── http_log.h │ │ ├── libapr-c.def │ │ ├── libapr-s.def │ │ ├── libhttpd-c.def │ │ ├── libhttpd-s.def │ │ └── os.h │ └── windows-apache2.h ├── cgi.scm ├── cgi │ ├── Makefile │ ├── cgi.scm │ └── make-lib.scm ├── fastcgi │ ├── Makefile │ ├── README │ ├── c-fcgi-bindings.scm │ ├── c-fcgi.c │ ├── c-fcgi.h │ ├── fastcgi-main.scm │ ├── fastcgi.scm │ ├── fcgi-binding.scm │ └── make-lib.scm ├── make-lib.scm ├── micro │ ├── Makefile │ ├── libws-c-bindings.defs │ ├── libws-c-bindings.scm │ ├── make-mhttpd-lib.scm │ └── microhttpd.scm ├── tests │ ├── auth │ │ ├── .htaccess │ │ └── auth.php │ ├── deployment.php │ ├── httpupload │ │ ├── receive.php │ │ └── upload.php │ └── info.php └── webconnect.scm └── zend-tests ├── Makefile ├── README ├── pcc-test.conf ├── run-tests.php └── tests ├── basic ├── 001.phpt ├── 006.phpt ├── 007.phpt ├── 008.phpt ├── 009.phpt ├── 010.phpt └── bug20539.phpt ├── bin-info.inc ├── classes ├── __call_001.phpt ├── __set__get_001.phpt ├── __set_data_corrupt.phpt ├── abstract.phpt ├── abstract_class.phpt ├── abstract_derived.phpt ├── abstract_final.phpt ├── abstract_inherit.phpt ├── abstract_not_declared.phpt ├── abstract_redeclare.phpt ├── abstract_static.phpt ├── array_access_001.phpt ├── array_access_002.phpt ├── array_access_003.phpt ├── array_access_004.phpt ├── array_access_006.phpt ├── assign_op_property_001.phpt ├── bug23951.phpt ├── bug24399.phpt ├── bug24445.phpt ├── bug26737.phpt ├── bug27468.phpt ├── bug27504.phpt ├── bug29446.phpt ├── class_example.phpt ├── constants_scope_001.phpt ├── ctor_dtor.phpt ├── ctor_dtor_inheritance.phpt ├── ctor_name_clash.phpt ├── dereferencing_001.phpt ├── factory_001.phpt ├── final.phpt ├── final_abstract.phpt ├── final_redeclare.phpt ├── incdec_property_001.phpt ├── incdec_property_002.phpt ├── incdec_property_003.phpt ├── incdec_property_004.phpt ├── inheritance.phpt ├── interface_class.phpt ├── interface_doubled.phpt ├── interface_implemented.phpt ├── interface_instantiate.phpt ├── interface_member.phpt ├── interface_method.phpt ├── interface_method_final.phpt ├── interface_method_private.phpt ├── interface_must_be_implemented.phpt ├── interfaces_001.phpt ├── interfaces_002.phpt ├── iterators_006.phpt ├── object_reference_001.phpt ├── private_001.phpt ├── private_002.phpt ├── private_003.phpt ├── private_003b.phpt ├── private_004.phpt ├── private_004b.phpt ├── private_005.phpt ├── private_005b.phpt ├── private_006.phpt ├── private_006b.phpt ├── private_007.phpt ├── private_007b.phpt ├── protected_001.phpt ├── protected_001b.phpt ├── protected_002.phpt ├── singleton_001.phpt ├── static_mix_1.phpt ├── static_mix_2.phpt ├── type_hinting_001.phpt ├── visibility_000a.phpt ├── visibility_000b.phpt ├── visibility_000c.phpt ├── visibility_001a.phpt ├── visibility_001b.phpt ├── visibility_001c.phpt ├── visibility_002a.phpt ├── visibility_002b.phpt ├── visibility_002c.phpt ├── visibility_003a.phpt ├── visibility_003b.phpt ├── visibility_003c.phpt ├── visibility_004a.phpt ├── visibility_004b.phpt └── visibility_004c.phpt ├── func ├── 001.phpt ├── 002.phpt ├── 003.phpt ├── 004.phpt └── 006.phpt ├── lang ├── 001.phpt ├── 002.phpt ├── 003.phpt ├── 004.phpt ├── 005.phpt ├── 006.phpt ├── 007.phpt ├── 008.phpt ├── 009.phpt ├── 010.phpt ├── 011.phpt ├── 012.phpt ├── 013.phpt ├── 014.phpt ├── 015.inc ├── 015.phpt ├── 016.inc ├── 016.phpt ├── 017.phpt ├── 018.phpt ├── 019.phpt ├── 020.phpt ├── 021.phpt ├── 022.phpt ├── 023-1.inc ├── 023-2.inc ├── 023.phpt ├── 024.phpt ├── 025.phpt ├── 026.phpt ├── 027.phpt ├── 028.phpt ├── 030.phpt ├── 031.phpt ├── 032.phpt ├── 033.phpt ├── 034.phpt ├── 035.phpt ├── bison1.phpt ├── bug17115.phpt ├── bug18872.phpt ├── bug19566.phpt ├── bug19943.phpt ├── bug20175.phpt ├── bug21094.phpt ├── bug21600.phpt ├── bug21669.phpt ├── bug21820.phpt ├── bug21849.phpt ├── bug21961.phpt ├── bug22231.phpt ├── bug22510.phpt ├── bug22592.phpt ├── bug22690.phpt ├── bug23279.phpt ├── bug23384.phpt ├── bug23489.phpt ├── bug23584.phpt ├── bug23624.phpt ├── bug23922.phpt ├── bug24054.phpt ├── bug24396.phpt ├── bug24403.phpt ├── bug24436.phpt ├── bug24573.phpt ├── bug24658.phpt ├── bug24783.phpt ├── bug24926.phpt ├── bug24951.phpt ├── bug26182.phpt ├── bug26696.phpt ├── bug26866.phpt ├── bug26869.phpt ├── bug27354.phpt ├── bug27443.phpt ├── bug27535.phpt ├── bug28213.phpt ├── bug28800.phpt ├── bug30578.phpt ├── bug30638.phpt ├── bug30726.phpt ├── bug30862.phpt ├── bug32828.phpt ├── bug32924.phpt ├── bug38579.inc ├── bug7515.phpt ├── catchable_error_001.phpt ├── catchable_error_002.phpt ├── each_binary_safety.phpt ├── error_2_exception_001.phpt ├── foreach_with_references_001.phpt ├── inc.inc ├── type_hints_001.phpt ├── type_hints_002.phpt └── type_hints_003.phpt ├── quicktester.inc └── strings ├── 001.phpt ├── 002.phpt ├── 004.phpt └── bug26703.phpt /README: -------------------------------------------------------------------------------- 1 | 2 | This is the original Roadsend PHP code base. It compiles PHP to native 3 | binaries. 4 | 5 | You can find the C++ rewrite (unfinished) at 6 | http://github.com/weyrick/roadsend-php-raven 7 | 8 | -------------------------------------------------------------------------------- /benchmarks/data/spellcheck: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/benchmarks/data/spellcheck -------------------------------------------------------------------------------- /benchmarks/regression/file.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /benchmarks/tests/ackermann.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /benchmarks/tests/array.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /benchmarks/tests/ary.php: -------------------------------------------------------------------------------- 1 | 2 | =0; $i--) { 9 | $Y[$i] = $X[$i]; 10 | } 11 | $last = $n-1; 12 | print "$Y[$last]\n"; 13 | } 14 | 15 | $n = ($argc == 2) ? $argv[1] : 100000; 16 | ary($n); 17 | ?> 18 | -------------------------------------------------------------------------------- /benchmarks/tests/ary3.php: -------------------------------------------------------------------------------- 1 | =0; $i--) { 16 | $Y[$i] += $X[$i]; 17 | } 18 | } 19 | $last = $n-1; 20 | print "$Y[0] $Y[$last]\n"; 21 | } 22 | 23 | ?> 24 | -------------------------------------------------------------------------------- /benchmarks/tests/fibo.php: -------------------------------------------------------------------------------- 1 | 13 | -------------------------------------------------------------------------------- /benchmarks/tests/gabriel-takl.php: -------------------------------------------------------------------------------- 1 | From "Performance and Evaluation of Lisp Systems" by Richard Gabriel 2 | pg. 114 3 | 4 | "TAKL is very much like TAK, but it does not perform any explicit 5 | arithmetic." 6 | 7 | 8 | -------------------------------------------------------------------------------- /benchmarks/tests/globals1.php: -------------------------------------------------------------------------------- 1 | an effort to make a more clear globals benchmark 2 | -------------------------------------------------------------------------------- /benchmarks/tests/hash.php: -------------------------------------------------------------------------------- 1 | 0; $i--) { 17 | if ($X[$i]) { $c++; } 18 | } 19 | print "$c\n"; 20 | } 21 | ?> 22 | -------------------------------------------------------------------------------- /benchmarks/tests/hello.php: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /benchmarks/tests/multi-dimensional.php: -------------------------------------------------------------------------------- 1 | This benchmark was contributed by "BDKR" 2 | 20 | -------------------------------------------------------------------------------- /benchmarks/tests/nestedloop.php: -------------------------------------------------------------------------------- 1 | 18 | -------------------------------------------------------------------------------- /benchmarks/tests/num-test.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /benchmarks/tests/preg_replace.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /benchmarks/tests/resource-cleanup.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/Makefile: -------------------------------------------------------------------------------- 1 | TOPLEVEL = ../ 2 | MY_TESTDIR = bugs/tests/ 3 | MY_TESTOUTDIR = bugs/testoutput/ 4 | DOTEST = ./dotest 5 | 6 | check : 7 | -rm -rf $(TOPLEVEL)$(MY_TESTOUTDIR) 8 | -mkdir $(TOPLEVEL)$(MY_TESTOUTDIR) 9 | @(cd $(TOPLEVEL) && $(DOTEST) $(MY_TESTDIR) $(MY_TESTOUTDIR)) 10 | 11 | 12 | clean : 13 | -rm -rf testoutput -------------------------------------------------------------------------------- /bugs/known-failures: -------------------------------------------------------------------------------- 1 | 2 | This information has been moved to the wiki: 3 | http://code.roadsend.com/pcc/wiki/TestSuiteKnownFailures 4 | 5 | -------------------------------------------------------------------------------- /bugs/tests/1052-2.inc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/1052-3.inc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/1580.inc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000693.php: -------------------------------------------------------------------------------- 1 | 0000693 foreach and others with no braces cause parse error 2 | 3 | $val) 10 | echo "$key, $val\n"; 11 | 12 | 13 | for($i=0; $i<10; $i++) 14 | echo "$i\n"; 15 | 16 | 17 | function cnt() { 18 | static $i = 0; 19 | 20 | $i++; 21 | return $i; 22 | } 23 | 24 | while (cnt() < 10) 25 | echo "counted\n"; 26 | 27 | 28 | 29 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000694.php: -------------------------------------------------------------------------------- 1 | class property access with $ throws parse error 2 | the following causes a parse error: 3 | (inside class method) 4 | 5 | $this->$var = 5; 6 | 7 | $v) { 19 | print "class prop is $n val is $v\n"; 20 | $v = $mah->$n; 21 | var_dump($v); 22 | } 23 | 24 | ?> 25 | 26 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000696.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000697.php: -------------------------------------------------------------------------------- 1 | Bug# 0000697 2 | 3 | default function parameters should accept undefined tokens for default values 4 | bad practice, but php allows this: 5 | 6 | 7 | function myfun($arg=undef, $arg2=undef) { 8 | ... 9 | } 10 | 11 | where undef isn't defined at all anywhere else. perhaps it turns it into a string? 12 | Additional Information 13 | 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000701.php: -------------------------------------------------------------------------------- 1 | instantiating a class with a variable class name 2 | 3 | 4 | zot . "\n"; 15 | 16 | 17 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000702.php: -------------------------------------------------------------------------------- 1 | a parse error is thrown when a # comment is immediately followed by a carriage return. 2 | 3 | 10 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000728.php: -------------------------------------------------------------------------------- 1 | 0000728 concat strings including other defines to build a define 2 | /Ui'); 7 | 8 | define('TAB_4',' '); 9 | 10 | // other defines 11 | 12 | define('TAB_8',TAB_4.TAB_4); 13 | 14 | echo SM_TAG_IDENTIFIER . ", " . SM_TAG_PREGEXP . ", " . TAB_4 . ", " . TAB_8 . "\n"; 15 | 16 | ?> 17 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000729.php: -------------------------------------------------------------------------------- 1 | 0000729 access to a class property through variable variable: 2 | 3 | {$prop} . "\n"; 8 | echo $c->$prop . "\n"; 9 | ?> 10 | 11 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000730.php: -------------------------------------------------------------------------------- 1 | 0000730 access to a string index in a class property 2 | 3 | 4 | tp{3}}\n"; 11 | 12 | ?> 13 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000732.php: -------------------------------------------------------------------------------- 1 | 0000732 parse error on complicated constant define() 2 | 3 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000733.php: -------------------------------------------------------------------------------- 1 | 0000733 parse error on class property named $parent 2 | 3 | parent . "\n"; 10 | } 11 | } 12 | 13 | $zot = new aclass(); 14 | 15 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000735.php: -------------------------------------------------------------------------------- 1 | 0000735 need support for returning a value from a function by reference 2 | 3 | zot = 2; 10 | } 11 | 12 | function &test() { 13 | $a =& new someClass(); 14 | return $a; 15 | } 16 | 17 | } 18 | 19 | 20 | 21 | $b = someClass::test(); 22 | 23 | echo $b->zot; 24 | 25 | 26 | ?> 27 | 28 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000750.php: -------------------------------------------------------------------------------- 1 | 0000750 parse error on bit operations 2 | 3 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000772.php: -------------------------------------------------------------------------------- 1 | '$s'\n"; 5 | 6 | ?> 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000791.php: -------------------------------------------------------------------------------- 1 | 0000791 switch statement parse error having to do with where the default: is 2 | 3 | 16 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000792.php: -------------------------------------------------------------------------------- 1 | 0000792 parse error using class property name 'class' 2 | 3 | class = 'woops'; 9 | } 10 | } 11 | 12 | 13 | ?> 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000793.php: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000794.php: -------------------------------------------------------------------------------- 1 | 13 | 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000795.php: -------------------------------------------------------------------------------- 1 | 0000795 parse error on default function argument as a negative number 2 | 3 | 13 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000796.php: -------------------------------------------------------------------------------- 1 | 0000796 parser error on empty braces 2 | 9 | 10 | or 11 | 12 | 17 | 18 | which really comes from code like this: 19 | 25 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000797.php: -------------------------------------------------------------------------------- 1 | 10 | 11 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000798.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000799.php: -------------------------------------------------------------------------------- 1 | 18 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000800.php: -------------------------------------------------------------------------------- 1 | 0000800 more string interpolation crazyness 2 | 3 | var['test'] = 'fnord'; 11 | echo "can you see the [{$this->var['test']}]?\n"; 12 | } 13 | 14 | } 15 | 16 | $c = new testClass(); 17 | 18 | ?> 19 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000828.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000882.php: -------------------------------------------------------------------------------- 1 | problem with using @ to disable errors 2 | 12 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000883.php: -------------------------------------------------------------------------------- 1 | windows carriage returns throw error 2 | 9 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000892.php: -------------------------------------------------------------------------------- 1 | right now the default script root directory is /, it needs to be the 2 | directory the script lives in for relative includes to work. 3 |
4 | This script needs to be run through mod_phpoo to matter. 5 |
6 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000894.php: -------------------------------------------------------------------------------- 1 | parse error on class variable named 'default' 2 | 3 | default = 'meep'; 9 | } 10 | } 11 | 12 | $c = new myclass(); 13 | $c->blah(); 14 | echo $c->default; 15 | 16 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000897.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000906.php: -------------------------------------------------------------------------------- 1 | disallow overriding scheme functions from php 2 | 3 | right now you can define a php function (con or list for example) and it will override the scheme function 4 | 5 | 21 | 22 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000914.php: -------------------------------------------------------------------------------- 1 | aprop =& $zot; 12 | 13 | $zot = 42; 14 | 15 | print "the answer is: " . $bar->aprop . "\n"; 16 | 17 | 18 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000916.php: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000917.php: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000919.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000921.php: -------------------------------------------------------------------------------- 1 | string = $str; 8 | echo $this->string; 9 | } 10 | 11 | } 12 | 13 | //Zend php screws up if you pass an unnamed variable by reference 14 | //$n = new hi('blah'); 15 | $a = 'blah'; 16 | $n = new hi($a); 17 | 18 | 19 | ?> 20 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000922.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000923.php: -------------------------------------------------------------------------------- 1 | key or value is optional in list() 2 | 3 | 'blah','2'=>'meep','3'=>'mope'); 6 | 7 | reset($a); 8 | while (list(,$v) = each($a)) { 9 | echo "$v\n"; 10 | } 11 | 12 | echo "-- next --\n"; 13 | 14 | reset($a); 15 | while (list($v,) = each($a)) { 16 | echo "$v\n"; 17 | } 18 | 19 | echo "-- next --\n"; 20 | 21 | reset($a); 22 | while (list(,,$v) = each($a)) { 23 | echo "$v\n"; 24 | } 25 | 26 | ?> 27 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000927.php: -------------------------------------------------------------------------------- 1 | 0000927 unable to foreach() on $GLOBALS 2 | 3 | $value) 8 | { 9 | $i++; 10 | } 11 | 12 | echo "it worked.\n"; 13 | 14 | ?> 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000939.php: -------------------------------------------------------------------------------- 1 | unset() needs to take variable number of arguments 2 | 3 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000940.php: -------------------------------------------------------------------------------- 1 | erroneous conversion of string to array 2 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000952.php: -------------------------------------------------------------------------------- 1 | 0000952 here tis. whoever wrote this should be shot. oh wait.. 2 | 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000953.php: -------------------------------------------------------------------------------- 1 | 0000953 parse error on question mark in comments 2 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000962.php: -------------------------------------------------------------------------------- 1 | 0000962 user defined functions with default values of false can fail 2 | apparently for the same reason we can't have a default of #f for defbuiltins, user defined functions can't either: 3 | 13 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000983.php: -------------------------------------------------------------------------------- 1 | 0000983 parse error, single quotes in double quotes on class var default 2 | 3 | avar\n"; 9 | } 10 | } 11 | 12 | $a = new aclass(); 13 | 14 | ?> 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000986.php: -------------------------------------------------------------------------------- 1 | 0000986 parse error globalizing a variable variable from a hash 2 | ".$$a['test']."\n"; 10 | } 11 | 12 | blah(); 13 | 14 | ?> 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000993.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0000999.php: -------------------------------------------------------------------------------- 1 | 0000999 continue in foreach does not advance array, causing infinite loop 2 | 13 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001001.php: -------------------------------------------------------------------------------- 1 | myarray[] = 'one'; 7 | $this->myarray[] = 'two'; 8 | var_dump($this->myarray); 9 | } 10 | } 11 | 12 | $a =& new aclass(); 13 | $b =& new aclass(); 14 | $c = new aclass(); 15 | 16 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001047.php: -------------------------------------------------------------------------------- 1 | 1); 5 | $a[] = array(''=>2); 6 | $a[] = array(''=>3); 7 | $a[] = array(''=>4); 8 | $a[] = array(''=>5); 9 | 10 | var_dump($a); 11 | 12 | 13 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001051.php: -------------------------------------------------------------------------------- 1 | 0001051: parse error on parent:: as rval 2 | afunc(); 21 | 22 | 23 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001052.php: -------------------------------------------------------------------------------- 1 | afunc(); 12 | 13 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001057.php: -------------------------------------------------------------------------------- 1 | 0001057 allow blank class definitions 2 | 16 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001076.php: -------------------------------------------------------------------------------- 1 | $v) { 5 | echo "shouldn't see this: $k => $v\n"; 6 | } 7 | 8 | echo "this should run, however\n"; 9 | 10 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001079.php: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001090.php: -------------------------------------------------------------------------------- 1 | precedence problem with ugly if operator 2 | 3 | 12 | 13 | /* 14 | this line: 15 | ($t != '' && $m ? 'yes' : 'no') 16 | is currently parsed like this: 17 | (($t != '') && ($m ? 'yes' : 'no')) 18 | needs to be like this: 19 | ((($t != '') && $m) ? 'yes' : 'no') 20 | */ -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001092.php: -------------------------------------------------------------------------------- 1 | 0001092 able to override builtin function 'error' 2 | 3 | Note: This test only produces a warning, and then only when compiled. 4 | 13 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001102.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001109.php: -------------------------------------------------------------------------------- 1 | 'v'); 12 | array_walk($arr,'test'); 13 | 14 | print "First value: ".$globalArray[0]; 15 | 16 | print "\nDone\n"; 17 | 18 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001112.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001113.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001115.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001120.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001122.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001126.php: -------------------------------------------------------------------------------- 1 | ".round($v, 2)."\n"; 6 | $v += 0.01; 7 | } 8 | 9 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001128.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001133.php: -------------------------------------------------------------------------------- 1 | 4 | first cell before < first cell after 5 | second cell before < second cell after 6 | "; 7 | 8 | echo strip_tags($test); 9 | ?> 10 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001135.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001137.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001139.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001140.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001141.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001142.php: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001144.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001149.php: -------------------------------------------------------------------------------- 1 | 13 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001151.php: -------------------------------------------------------------------------------- 1 | 0001151 core error 2 | 17 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001153.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001154.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001155.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001158.php: -------------------------------------------------------------------------------- 1 | <$ui2>\n"); 11 | } 12 | 13 | ?> 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001166.php: -------------------------------------------------------------------------------- 1 | 0001166 nested foreach problem 2 | 3 | Additional Information i'm sure this has to do with the internal array 4 | index. not sure how php handles it but it works ok in php, ie it 5 | iterates through all items for each nest level. 6 | 7 | 20 | 21 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001185.php: -------------------------------------------------------------------------------- 1 | 0001185 here doc escaping 2 | 3 | php escapes \\ to \ within heredocs 4 | 5 | 16 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001208.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001221.php: -------------------------------------------------------------------------------- 1 | 0001221 badness in the interpreter with multidimensional arrays 2 | 3 | $foo[0][0] works, but $a=0; $foo[0][$a] doesn't. 4 | 5 | 13 | 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001345.php: -------------------------------------------------------------------------------- 1 | 0001345 parse error on class with method 'string' 2 | 3 | string('a phony phalacy'); 15 | 16 | ?> 17 | 18 | 19 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001407.php: -------------------------------------------------------------------------------- 1 | array('af|afrikaans', 'afrikaans-utf-8', 'af'), 5 | 'af-iso-8859-1'=> array('af|afrikaans', 'afrikaans-iso-8859-1', 'af'), 6 | 'bg-win1251' => array('bg|bulgarian', 'bulgarian-windows-1251', 'bg')); 7 | 8 | $b = $a; 9 | $a = array(); 10 | 11 | while (list($p, $s) = each($b)) { 12 | var_dump($p); 13 | var_dump($s); 14 | $a[$p] = $s; 15 | } 16 | 17 | var_dump($a); 18 | 19 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001437.php: -------------------------------------------------------------------------------- 1 | 0001437 php-hashes don't behave quite the same as php's hashes after deleting entries 2 | 9 | 10 | This is due to the way elements are deleted from the ordered-rep vector. It's probably better to maintain two pointers in each entry in the hashtable -- prev and next -- like a doubly linked list, than to dick around with the vector. That would fix this. -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001495.php: -------------------------------------------------------------------------------- 1 | this inserts the 12 at key 1001, should be at key 2: 2 | 3 | check if looking up a big integer key bumps the maximum integer key 4 | 5 | 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001534.php: -------------------------------------------------------------------------------- 1 | blah); 7 | unset($this->blah); 8 | var_dump($this->blah); 9 | } 10 | } 11 | 12 | $a = new aclass(); 13 | $a->unsetit(); 14 | 15 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001536.php: -------------------------------------------------------------------------------- 1 | define() needs to happen like a normal statement, and still work as a 2 | default value. 3 | 4 | 11 | 12 | more 13 | 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001580.php: -------------------------------------------------------------------------------- 1 | failure to compile on return in global context 2 | 16 | down here 17 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001581.php: -------------------------------------------------------------------------------- 1 | up here 2 | exit) { 10 | exit; 11 | } else 12 | print "sucked"; 13 | } 14 | 15 | } 16 | 17 | $a = new aclass(); 18 | $a->hi(); 19 | 20 | ?> 21 | down here 22 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001723.php: -------------------------------------------------------------------------------- 1 | compiled code is mutating arrays on n-dimensional access: 2 | 3 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001762.php: -------------------------------------------------------------------------------- 1 | runtime error in compiler on variable method name 2 | $func(); 13 | 14 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001812.php: -------------------------------------------------------------------------------- 1 | parser problem with echo 2 | 3 | When one of the arguments to echo is 'exit', pcc returns a parser error. example: 4 | 5 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001819.php: -------------------------------------------------------------------------------- 1 | It appears to be undocumented, but you can use {} for 2 | accessing arrays as well as []. i.e. foo{1}{2} 3 | 4 | array('foo2' => 'bar')); 6 | echo $test{'foo'}{'foo2'} . "\n"; 7 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001824.php: -------------------------------------------------------------------------------- 1 | Alternative syntax for control structures 2 | 3 | 10 | 11 | -- or -- 12 | 13 | 20 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001825.php: -------------------------------------------------------------------------------- 1 | If the last semicolon before the '?>' is skipped, there is a comment on the same 2 | line as the last line of code and the end tag is also on the line, pcc pukes. 3 | 4 | 5 | 6 | foo 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001829.php: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * admin/reports/reports.php - Administrator's Sales Performance Data 4 | * 5 | * Displays Sales Performance Data. 6 | * 7 | * $Id: bug-id-0001829.php,v 1.1 2004/06/04 10:42:58 tim Exp $ 8 | */ 9 | 10 | ?> 11 | asdf 12 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001834.php: -------------------------------------------------------------------------------- 1 | doesn't escape curly bracket right in front of a var inside double quotes 2 | 3 | if a literal string contains a curly bracket followed by a variable and 4 | the curly bracket is escaped (so it's not part of the variable) pcc pukes on the next character after the close curly bracket. 5 | 6 | 10 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001839.php: -------------------------------------------------------------------------------- 1 | 8 | 9 | we coerce, they don't (anymore) 10 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001841.php: -------------------------------------------------------------------------------- 1 | 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001843.php: -------------------------------------------------------------------------------- 1 | print_r doesn't print the fields in objects, it just prints 2 | "Object": 3 | 4 | new foo()); 12 | 13 | print_r($a); 14 | 15 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001844.php: -------------------------------------------------------------------------------- 1 | segfault on string/array access 2 | 3 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001847.php: -------------------------------------------------------------------------------- 1 | bigloo type error from pcc 2 | 3 | Description pcc gives the following warning: 4 | 5 | Type error -- `struct' expected, `nil' provided 6 | 7 | when trying to compile the following snipet of code: 8 | 9 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001888.php: -------------------------------------------------------------------------------- 1 | afunc('meep','hello'); 15 | $a->afunc('meep','hello',true); 16 | 17 | 18 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001938.php: -------------------------------------------------------------------------------- 1 | Pcc pukes if you try to access the elements of a multi-dimensional array 2 | and mix the {} and the [] 3 | 4 | array('a'=>'b'),'two'=>array('c'=>'d')); 7 | 8 | echo $test{'two'}['c']; 9 | echo "\n"; 10 | 11 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001940.php: -------------------------------------------------------------------------------- 1 | define() inside of an ugly-then produces a parse error 2 | 3 | 4 | 11 | 12 | this is because define() is actually an rval (I think it's even 13 | a normal function in php): 14 | 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0001971.php: -------------------------------------------------------------------------------- 1 | parser pukes on empty switch statements 2 | 3 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002036.php: -------------------------------------------------------------------------------- 1 | the reference property belongs to values, not hash slots 2 | 3 | in this case, both entries in the array are references, because there is only 4 | one value and it's a reference. pcc does not implement this correctly: 5 | 6 | 7 | 8 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002128.php: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002248.php: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002565.php: -------------------------------------------------------------------------------- 1 | 0002565: fwrite() is not binary safe 2 | 3 | it's using stdio's fputs(), so it stops at the first 0 in the string: 4 | 5 | 15 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002611.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002765.php: -------------------------------------------------------------------------------- 1 | php-hash's doubly linked list is being walked past the sentinel 2 | 3 | Looks like this will do it: 4 | 5 | 14 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0002793.php: -------------------------------------------------------------------------------- 1 | 17 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003085.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003091.php: -------------------------------------------------------------------------------- 1 | test comparison of resources 2 | 0)."\n"; 19 | echo "4: ".($fp < 0)."\n"; 20 | 21 | fclose($fp); 22 | 23 | 24 | 25 | ?> 26 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003109.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003160.php: -------------------------------------------------------------------------------- 1 | this is keeping pweb from working. if the subclass overrides a static method, it can't call the method in its parent class. 2 | 3 | 4 | raiseError(); 21 | 22 | ?> 23 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003162.php: -------------------------------------------------------------------------------- 1 | 0003162: windows: string-> int conversion broken 2 | 21 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003166.php: -------------------------------------------------------------------------------- 1 | foreach an object like an array 2 | $v) { 13 | echo "$k => $v\n"; 14 | } 15 | 16 | ?> -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003191.php: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003209.php: -------------------------------------------------------------------------------- 1 | prop =& $this->otherprop; 9 | $this->prop = "foo"; 10 | } 11 | } 12 | 13 | $foo = new Foo(); 14 | var_dump($foo); 15 | ?> 16 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003210.php: -------------------------------------------------------------------------------- 1 | I dunno if this changed or what, but we just complain about "Cannot use a scalar value as an array", and php bashes it to an array. Test: 2 | 3 | prop['key'] = "value"; 10 | } 11 | } 12 | 13 | $foo = new Foo(); 14 | var_dump($foo); 15 | 16 | 17 | $bar = false; 18 | $bar['key'] = 'value'; 19 | var_dump($bar); 20 | 21 | ?> 22 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003212.php: -------------------------------------------------------------------------------- 1 | roles = array(1, 2, 3); 10 | $two->roles = array(1, 2); 11 | 12 | if ($one == $two) { 13 | echo "same\n"; 14 | } else { 15 | echo "not same\n"; 16 | } 17 | 18 | ?> 19 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003213.php: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003223.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003224.php: -------------------------------------------------------------------------------- 1 | prop . "\n";'); 6 | } 7 | } 8 | $foo = new foo(); 9 | ?> 10 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003226.php: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003227.php: -------------------------------------------------------------------------------- 1 | 7 | 8 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003230.php: -------------------------------------------------------------------------------- 1 | 0003230: line numbers incorrect with multiline strings in double quotes 2 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003250.php: -------------------------------------------------------------------------------- 1 | This 2 | 3 | gives me 4 | Runtime error in file bar.php on line 0: Type `onum' expected, `bnil' provided 5 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003251.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003256.php: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /bugs/tests/bug-id-0003497.php: -------------------------------------------------------------------------------- 1 | > $b; 13 | return $r; 14 | } 15 | 16 | $r = bwops(8,16); 17 | var_dump($r); 18 | 19 | ?> -------------------------------------------------------------------------------- /compiler/debugger.h: -------------------------------------------------------------------------------- 1 | #ifdef PCC_MINGW 2 | 3 | #define WIN32_LEAN_AND_MEAN 4 | #include 5 | 6 | #endif /* PCC_MINGW */ 7 | -------------------------------------------------------------------------------- /compiler/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-php-eval-lib 2 | (import (driver "driver.scm") 3 | (config "config.scm") 4 | (include "include.scm")) 5 | 6 | (eval (export-all)) ) 7 | -------------------------------------------------------------------------------- /doc/Makefile: -------------------------------------------------------------------------------- 1 | 2 | .PHONY: all 3 | all: html 4 | (cd api && $(MAKE) clean all) 5 | 6 | .PHONY: html 7 | html: 8 | (cd manual && $(MAKE) html) 9 | 10 | .PHONY: clean 11 | clean: 12 | (cd manual && $(MAKE) clean) 13 | 14 | .PHONY: distclean 15 | distclean: clean 16 | 17 | -------------------------------------------------------------------------------- /doc/examples/cl-project/inc1.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/examples/cl-project/inc2.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/examples/cl-project/main.php: -------------------------------------------------------------------------------- 1 | 20 | end of program 21 | -------------------------------------------------------------------------------- /doc/glade-tutorial/Makefile: -------------------------------------------------------------------------------- 1 | glade-tutorial.html: glade-tutorial.texinfo 2 | makeinfo --html --no-split glade-tutorial.texinfo 3 | -------------------------------------------------------------------------------- /doc/resources/apache-request-flow.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/apache-request-flow.dia -------------------------------------------------------------------------------- /doc/resources/app-runtime-include.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/app-runtime-include.dia -------------------------------------------------------------------------------- /doc/resources/app-runtime-include.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/app-runtime-include.png -------------------------------------------------------------------------------- /doc/resources/arg-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/arg-1.png -------------------------------------------------------------------------------- /doc/resources/breakpoint-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/breakpoint-1.png -------------------------------------------------------------------------------- /doc/resources/breakpoint-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/breakpoint-2.png -------------------------------------------------------------------------------- /doc/resources/call-stack-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/call-stack-1.png -------------------------------------------------------------------------------- /doc/resources/code-browse-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/code-browse-1.png -------------------------------------------------------------------------------- /doc/resources/compile-vs-interpret.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/compile-vs-interpret.dia -------------------------------------------------------------------------------- /doc/resources/compile-vs-interpret.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/compile-vs-interpret.png -------------------------------------------------------------------------------- /doc/resources/debug-toolbar-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/debug-toolbar-1.png -------------------------------------------------------------------------------- /doc/resources/deploy-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/deploy-1.png -------------------------------------------------------------------------------- /doc/resources/editorc-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/editorc-1.png -------------------------------------------------------------------------------- /doc/resources/editorc-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/editorc-2.png -------------------------------------------------------------------------------- /doc/resources/editorc-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/editorc-3.png -------------------------------------------------------------------------------- /doc/resources/editorc-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/editorc-4.png -------------------------------------------------------------------------------- /doc/resources/file-browse-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/file-browse-1.png -------------------------------------------------------------------------------- /doc/resources/idec-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-1.png -------------------------------------------------------------------------------- /doc/resources/idec-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-2.png -------------------------------------------------------------------------------- /doc/resources/idec-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-3.png -------------------------------------------------------------------------------- /doc/resources/idec-4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-4.png -------------------------------------------------------------------------------- /doc/resources/idec-5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-5.png -------------------------------------------------------------------------------- /doc/resources/idec-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-6.png -------------------------------------------------------------------------------- /doc/resources/idec-7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/idec-7.png -------------------------------------------------------------------------------- /doc/resources/interp-lib-include.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/interp-lib-include.dia -------------------------------------------------------------------------------- /doc/resources/interp-lib-include.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/interp-lib-include.png -------------------------------------------------------------------------------- /doc/resources/lic-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/lic-1.png -------------------------------------------------------------------------------- /doc/resources/lic-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/lic-2.png -------------------------------------------------------------------------------- /doc/resources/local-vars-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/local-vars-1.png -------------------------------------------------------------------------------- /doc/resources/main-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/main-1.png -------------------------------------------------------------------------------- /doc/resources/multi-source-app.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/multi-source-app.dia -------------------------------------------------------------------------------- /doc/resources/multi-source-app.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/multi-source-app.png -------------------------------------------------------------------------------- /doc/resources/pfile-browse-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/pfile-browse-1.png -------------------------------------------------------------------------------- /doc/resources/projc-comp-options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-comp-options.png -------------------------------------------------------------------------------- /doc/resources/projc-files.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-files.png -------------------------------------------------------------------------------- /doc/resources/projc-lib-creation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-lib-creation.png -------------------------------------------------------------------------------- /doc/resources/projc-libs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-libs.png -------------------------------------------------------------------------------- /doc/resources/projc-linked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-linked.png -------------------------------------------------------------------------------- /doc/resources/projc-micro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-micro.png -------------------------------------------------------------------------------- /doc/resources/projc-options.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-options.png -------------------------------------------------------------------------------- /doc/resources/projc-search-paths.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-search-paths.png -------------------------------------------------------------------------------- /doc/resources/projc-webapp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/projc-webapp.png -------------------------------------------------------------------------------- /doc/resources/toolbar-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/toolbar-1.png -------------------------------------------------------------------------------- /doc/resources/using-libs.dia: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/using-libs.dia -------------------------------------------------------------------------------- /doc/resources/using-libs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/resources/using-libs.png -------------------------------------------------------------------------------- /doc/tutorial/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: phpbb-tutorial.html 3 | 4 | phpbb-tutorial.html: phpbb-tutorial.texinfo 5 | makeinfo --html --no-split phpbb-tutorial.texinfo 6 | 7 | -------------------------------------------------------------------------------- /doc/tutorial/project-properties.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/tutorial/project-properties.png -------------------------------------------------------------------------------- /doc/tutorial/scribble-source-entered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/doc/tutorial/scribble-source-entered.png -------------------------------------------------------------------------------- /packages/deb/roadsend-pcc-prereqs.postinst.template: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ldconfig 4 | -------------------------------------------------------------------------------- /packages/deb/roadsend-pcc-prereqs.postrm.template: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ldconfig 4 | -------------------------------------------------------------------------------- /packages/deb/roadsend-pcc-runtime.postinst.template: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ## check if we need to restore /etc/pcc.conf 4 | if [ -f "/etc/.pcc.conf.installer.backup" ]; then 5 | mv -f /etc/.pcc.conf.installer.backup /etc/pcc.conf 6 | fi 7 | 8 | ## try to install the web module if apxs is installed 9 | APXS=`which apxs 2>&1` 10 | if [ -n "$APXS" ]; then 11 | if [ -e "$APXS" ]; then 12 | $APXS -i -a -n "pcc" /usr/lib/roadsend/mod_pcc.so 13 | fi 14 | fi 15 | 16 | ldconfig 17 | -------------------------------------------------------------------------------- /packages/deb/roadsend-pcc-runtime.postrm.template: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ldconfig 4 | -------------------------------------------------------------------------------- /packages/deb/roadsend-pcc.postinst.template: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ## check if we need to restore /etc/pcc.conf 4 | if [ -f "/etc/.pcc.conf.installer.backup" ]; then 5 | mv -f /etc/.pcc.conf.installer.backup /etc/pcc.conf 6 | fi 7 | 8 | ## try to install the web module if apxs is installed 9 | APXS=`which apxs 2>&1` 10 | if [ -n "$APXS" ]; then 11 | if [ -e "$APXS" ]; then 12 | $APXS -i -a -n "pcc" /usr/lib/roadsend/mod_pcc.so 13 | fi 14 | fi 15 | 16 | ldconfig 17 | -------------------------------------------------------------------------------- /packages/deb/roadsend-pcc.postrm.template: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ldconfig 4 | -------------------------------------------------------------------------------- /packages/scripts/makeself/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/scripts/makeself/README -------------------------------------------------------------------------------- /packages/scripts/makeself/TODO: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/scripts/makeself/TODO -------------------------------------------------------------------------------- /packages/scripts/makeself/makeself.lsm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/scripts/makeself/makeself.lsm -------------------------------------------------------------------------------- /packages/scripts/makeself/makeself.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/scripts/makeself/makeself.sh -------------------------------------------------------------------------------- /packages/windows/SetEnv.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/SetEnv.exe -------------------------------------------------------------------------------- /packages/windows/pccFE.ini.tmpl: -------------------------------------------------------------------------------- 1 | [baseConfig] 2 | pccBinary=@@@app@@@\pcc\bin\pcc.exe 3 | pdbBinary=@@@app@@@\pcc\bin\pdb.exe 4 | pcctagsBinary=@@@app@@@\pcc\bin\pcctags.exe 5 | pccConfigFile=@@@app@@@\etc\pcc.conf 6 | defaultProjectDir=@@@app@@@\projects 7 | 8 | [Options] 9 | tagsEnabled=1 10 | debuggerEnabled=1 11 | splashEnabled=1 12 | saveWorkspace=1 13 | backupsEnabled=1 14 | 15 | -------------------------------------------------------------------------------- /packages/windows/pccpi.bat: -------------------------------------------------------------------------------- 1 | PATH ..\..\bin;%PATH% 2 | ..\..\bin\sh.exe pccpi.sh %1 %2 %3 %4 3 | 4 | -------------------------------------------------------------------------------- /packages/windows/projects/cl-use-lib/cl-use-lib.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/cl-use-lib/cl-use-lib.redb -------------------------------------------------------------------------------- /packages/windows/projects/cl-use-lib/cl-use-lib.tags: -------------------------------------------------------------------------------- 1 | !_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ 2 | !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ 3 | !_TAG_PROGRAM_AUTHOR Roadsend /support@roadsend.com/ 4 | !_TAG_PROGRAM_NAME Roadsend Tags // 5 | !_TAG_PROGRAM_URL http://roadsend.com /Roadsend site/ 6 | !_TAG_PROGRAM_VERSION 5.5 // 7 | -------------------------------------------------------------------------------- /packages/windows/projects/fcgi-project/fcgi-project.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/fcgi-project/fcgi-project.redb -------------------------------------------------------------------------------- /packages/windows/projects/fcgi-project/fcgi-project.tags: -------------------------------------------------------------------------------- 1 | !_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ 2 | !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ 3 | !_TAG_PROGRAM_AUTHOR Roadsend /support@roadsend.com/ 4 | !_TAG_PROGRAM_NAME Roadsend Tags // 5 | !_TAG_PROGRAM_URL http://roadsend.com /Roadsend site/ 6 | !_TAG_PROGRAM_VERSION 5.5 // 7 | -------------------------------------------------------------------------------- /packages/windows/projects/glade-project/glade-project.rc: -------------------------------------------------------------------------------- 1 | 1 ICON "C:\\roadsend\\projects\\php_file.ico" 2 | -------------------------------------------------------------------------------- /packages/windows/projects/glade-project/glade-project.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/glade-project/glade-project.redb -------------------------------------------------------------------------------- /packages/windows/projects/gtk-project/gtk-project.rc: -------------------------------------------------------------------------------- 1 | 1 ICON "C:\\roadsend\\projects\\php_file.ico" 2 | -------------------------------------------------------------------------------- /packages/windows/projects/gtk-project/gtk-project.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/gtk-project/gtk-project.redb -------------------------------------------------------------------------------- /packages/windows/projects/hello/hello.rc: -------------------------------------------------------------------------------- 1 | 1 ICON "C:\\roadsend\\projects\\php_file.ico" 2 | -------------------------------------------------------------------------------- /packages/windows/projects/hello/hello.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/hello/hello.redb -------------------------------------------------------------------------------- /packages/windows/projects/lib-project/lib-project.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/lib-project/lib-project.redb -------------------------------------------------------------------------------- /packages/windows/projects/lib-project/lib2.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /packages/windows/projects/lib-project/lib3.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /packages/windows/projects/micro-project/home/main.php: -------------------------------------------------------------------------------- 1 | This is the file: /home/main.php\n"; 4 | 5 | 6 | ?> -------------------------------------------------------------------------------- /packages/windows/projects/micro-project/images/reSmLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/micro-project/images/reSmLogo.png -------------------------------------------------------------------------------- /packages/windows/projects/micro-project/info.php: -------------------------------------------------------------------------------- 1 | 6 |
 7 | 
26 | 
27 | -------------------------------------------------------------------------------- /packages/windows/projects/micro-project/micro-project.rc: -------------------------------------------------------------------------------- 1 | 1 ICON "C:\\roadsend\\projects\\php_file.ico" 2 | -------------------------------------------------------------------------------- /packages/windows/projects/micro-project/micro-project.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/micro-project/micro-project.redb -------------------------------------------------------------------------------- /packages/windows/projects/micro-project/micro-project.tags: -------------------------------------------------------------------------------- 1 | !_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ 2 | !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ 3 | !_TAG_PROGRAM_AUTHOR Roadsend /support@roadsend.com/ 4 | !_TAG_PROGRAM_NAME Roadsend Tags // 5 | !_TAG_PROGRAM_URL http://roadsend.com /Roadsend site/ 6 | !_TAG_PROGRAM_VERSION 5.5 // 7 | -------------------------------------------------------------------------------- /packages/windows/projects/php_file.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/php_file.ico -------------------------------------------------------------------------------- /packages/windows/projects/win-project/win-project.redb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/packages/windows/projects/win-project/win-project.redb -------------------------------------------------------------------------------- /packages/windows/projects/win-project/win-project.tags: -------------------------------------------------------------------------------- 1 | !_TAG_FILE_FORMAT 2 /extended format; --format=1 will not append ;" to lines/ 2 | !_TAG_FILE_SORTED 1 /0=unsorted, 1=sorted, 2=foldcase/ 3 | !_TAG_PROGRAM_AUTHOR Roadsend /support@roadsend.com/ 4 | !_TAG_PROGRAM_NAME Roadsend Tags // 5 | !_TAG_PROGRAM_URL http://roadsend.com /Roadsend site/ 6 | !_TAG_PROGRAM_VERSION 5.5 // 7 | -------------------------------------------------------------------------------- /runtime/ext/curl/curl-headers.h: -------------------------------------------------------------------------------- 1 | #ifdef PCC_MINGW 2 | 3 | #include 4 | 5 | #undef SOCKET 6 | #include 7 | 8 | 9 | #endif /* PCC_MINGW */ 10 | -------------------------------------------------------------------------------- /runtime/ext/curl/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-phpcurl-lib 2 | (import 3 | (php-curl-lib "php-curl.scm") 4 | )) 5 | -------------------------------------------------------------------------------- /runtime/ext/curl/other-tests/dumppost.php: -------------------------------------------------------------------------------- 1 | \n"; 6 | var_dump($_POST); 7 | } 8 | else { 9 | echo "nothing was posted\n"; 10 | } 11 | 12 | 13 | ?> -------------------------------------------------------------------------------- /runtime/ext/curl/other-tests/foo.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/curl/other-tests/foo.bin -------------------------------------------------------------------------------- /runtime/ext/curl/php-curl.sch: -------------------------------------------------------------------------------- 1 | (init-php-curl-lib) 2 | -------------------------------------------------------------------------------- /runtime/ext/gtk/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-php-gtk-lib 2 | (import (php-gtk-lib "php-gtk.scm")) 3 | (import (php-gdk-lib "php-gdk.scm")) 4 | (import (gtk-enums-lib "gtk-enums.scm")) 5 | (import (gdk-enums-lib "gdk-enums.scm")) 6 | (import (php-gtk-common-lib "php-gtk-common.scm"))) 7 | 8 | -------------------------------------------------------------------------------- /runtime/ext/gtk/other-tests/gtk.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/gtk/other-tests/gtk.php -------------------------------------------------------------------------------- /runtime/ext/gtk/php-gtk.init: -------------------------------------------------------------------------------- 1 | ;(set! *cc-options* 2 | ; (string-append *cc-options* 3 | ; " -I/usr/local/include ")) 4 | 5 | (set! *ld-options* 6 | (string-append *ld-options* 7 | ;;output of gtk-config --libs 8 | ;;hardcoded so it doesn't have to be in the path on windows 9 | " -L/usr/local/lib")) 10 | 11 | -------------------------------------------------------------------------------- /runtime/ext/gtk/php-gtk.sch: -------------------------------------------------------------------------------- 1 | ;;; 2 | ;;; Initialization 3 | ;;; ============== 4 | 5 | (init-php-gtk-lib) 6 | 7 | -------------------------------------------------------------------------------- /runtime/ext/gtk/tests/flags.php: -------------------------------------------------------------------------------- 1 | make sure that flags are working about the same 2 | flags()); 11 | 12 | echo "flag: \n"; 13 | var_dump(GTK_CAN_DEFAULT); 14 | 15 | $button->set_flags(GTK_CAN_DEFAULT); 16 | echo "new button flags: \n"; 17 | var_dump($button->flags()); 18 | 19 | ?> -------------------------------------------------------------------------------- /runtime/ext/gtk/tests/gdkcolor.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/gtk/tests/get-set-data.php: -------------------------------------------------------------------------------- 1 | set_data("foo", "this is a string"); 6 | echo "the data: " . $obj->get_data("foo") . "\n"; 7 | 8 | 9 | ?> -------------------------------------------------------------------------------- /runtime/ext/gtk/tests/idle.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/gtk/tests/timeout.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/gtk2/defs/scintilla.defs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/gtk2/defs/scintilla.defs -------------------------------------------------------------------------------- /runtime/ext/gtk2/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-php-gtk-lib 2 | ;; (import (define-classes "define-classes.scm")) 3 | (import (php-gtk-lib "php-gtk.scm")) 4 | (import (php-gdk-lib "php-gdk.scm")) 5 | ;; (import (gtk-enums-lib "gtk-enums.scm")) 6 | ;; (import (gdk-enums-lib "gdk-enums.scm")) 7 | (import (php-gtk-common-lib "php-gtk-common.scm"))) 8 | 9 | -------------------------------------------------------------------------------- /runtime/ext/gtk2/php-gtk2.sch: -------------------------------------------------------------------------------- 1 | ;;; 2 | ;;; Initialization 3 | ;;; ============== 4 | 5 | (init-php-gtk-lib) 6 | 7 | -------------------------------------------------------------------------------- /runtime/ext/gtk2/tests/enums.php: -------------------------------------------------------------------------------- 1 | Just check if some random enum works 2 | -------------------------------------------------------------------------------- /runtime/ext/mysql/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-phpmysql-lib 5 | (import (php-mysql-lib "php-mysql.scm"))) 6 | -------------------------------------------------------------------------------- /runtime/ext/mysql/php-mysql.sch: -------------------------------------------------------------------------------- 1 | (init-php-mysql-lib) 2 | 3 | -------------------------------------------------------------------------------- /runtime/ext/mysql/tests/createdb.php: -------------------------------------------------------------------------------- 1 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /runtime/ext/mysql/tests/list_fields.php: -------------------------------------------------------------------------------- 1 | 14 | -------------------------------------------------------------------------------- /runtime/ext/mysql/tests/mysql_escape_string.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /runtime/ext/mysql/tests/mysql_field_name.php: -------------------------------------------------------------------------------- 1 | 14 | -------------------------------------------------------------------------------- /runtime/ext/mysql/tests/openclose.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /runtime/ext/mysql/windows-mysql.h: -------------------------------------------------------------------------------- 1 | #ifdef PCC_MINGW 2 | 3 | #define WIN32_LEAN_AND_MEAN 1 4 | #include 5 | #undef SOCKET 6 | #include 7 | 8 | typedef unsigned int uint; 9 | 10 | //#include 11 | 12 | 13 | #endif //PCC_MINGW 14 | -------------------------------------------------------------------------------- /runtime/ext/odbc/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-phpodbc-lib 5 | (import (php-odbc-lib "php-odbc.scm"))) 6 | -------------------------------------------------------------------------------- /runtime/ext/odbc/php-odbc.sch: -------------------------------------------------------------------------------- 1 | (init-php-odbc-lib) 2 | 3 | -------------------------------------------------------------------------------- /runtime/ext/odbc/tests/dsnconnect.php: -------------------------------------------------------------------------------- 1 | 16 | 17 | -------------------------------------------------------------------------------- /runtime/ext/odbc/tests/errormsg.php: -------------------------------------------------------------------------------- 1 | 17 | 18 | -------------------------------------------------------------------------------- /runtime/ext/odbc/windows-odbc.h: -------------------------------------------------------------------------------- 1 | #ifdef PCC_MINGW 2 | 3 | #define WIN32_LEAN_AND_MEAN 1 4 | #include 5 | 6 | //#undef SOCKET 7 | //#include 8 | 9 | 10 | #endif //PCC_MINGW 11 | -------------------------------------------------------------------------------- /runtime/ext/pcc-win/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-pcc-win-lib 5 | 6 | (import (pcc-win "windows.scm"))) 7 | -------------------------------------------------------------------------------- /runtime/ext/pcc-win/pcc-win.h: -------------------------------------------------------------------------------- 1 | 2 | 3 | #undef SOCKET 4 | #include 5 | 6 | -------------------------------------------------------------------------------- /runtime/ext/pcc-win/pcc-win.sch: -------------------------------------------------------------------------------- 1 | (init-pcc-win-lib) 2 | -------------------------------------------------------------------------------- /runtime/ext/pcc-win/tests/messagebox.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/pcc-win/tests/shellexec.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/pcre/README: -------------------------------------------------------------------------------- 1 | - fix global-loop functions to only loop if subject-offset is (- (string-length subject) 1) ? 2 | right now it loops as long as it's less than subject length, which might be one too many as it 3 | appeared to be in preg_split. need test cases for this in other functions 4 | 5 | -------------------------------------------------------------------------------- /runtime/ext/pcre/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-php-pcre-lib 5 | 6 | (import (php-pcre "scm-pcre.scm"))) 7 | -------------------------------------------------------------------------------- /runtime/ext/pcre/php-pcre.sch: -------------------------------------------------------------------------------- 1 | (init-php-pcre-lib) 2 | -------------------------------------------------------------------------------- /runtime/ext/pcre/tests/callback-bug.php: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /runtime/ext/pcre/tests/pcre-6.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/phpoo-extension.sch: -------------------------------------------------------------------------------- 1 | (directives 2 | (include "../../php-runtime.sch") 3 | (load (php-macros "../../../php-macros.scm"))) 4 | -------------------------------------------------------------------------------- /runtime/ext/skeleton/make-lib.scm: -------------------------------------------------------------------------------- 1 | ; 2 | ; this file should import all modules that should be exported 3 | ; as part of the extension. this includes any files that use 4 | ; defbuiltin, for example. 5 | ; 6 | ; c-bindings that are used only internally by the extension don't 7 | ; need to be listed here 8 | ; 9 | (module __make-skeleton-lib 10 | (import 11 | (php-skeleton-lib "php-skeleton.scm") 12 | )) 13 | -------------------------------------------------------------------------------- /runtime/ext/skeleton/skeleton.sch: -------------------------------------------------------------------------------- 1 | ; 2 | ; this should call the init function for the extension 3 | ; 4 | (init-php-skeleton-lib) 5 | -------------------------------------------------------------------------------- /runtime/ext/skeleton/tests/skeleton.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/sockets/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-phpsocket-lib 5 | (import (php-sockets-lib "php-sockets.scm"))) 6 | -------------------------------------------------------------------------------- /runtime/ext/sockets/php-sockets.sch: -------------------------------------------------------------------------------- 1 | (init-php-sockets-lib) 2 | -------------------------------------------------------------------------------- /runtime/ext/sockets/tests/create-close.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/encode.h: -------------------------------------------------------------------------------- 1 | 2 | 3 | int sqlite_encode_binary(const unsigned char *in, int n, unsigned char *out); 4 | int sqlite_decode_binary(const unsigned char *in, unsigned char *out); 5 | 6 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-phpsqlite-lib 5 | (import (php-sqlite-lib "php-sqlite.scm"))) 6 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/php-sqlite.sch: -------------------------------------------------------------------------------- 1 | (init-php-sqlite-lib) 2 | 3 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/sqlite-utils.h: -------------------------------------------------------------------------------- 1 | 2 | #include "sqlite3.h" 3 | 4 | int sqlite_custom_function(sqlite3* db, char* sqlite_name, char* php_name, int num_args); 5 | int sqlite_custom_aggregate(sqlite3* db, char* sqlite_name, obj_t user_data, int num_args); 6 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/tests/exec.php: -------------------------------------------------------------------------------- 1 | 11 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/tests/oo-api.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/sqlite/tests/openclose.php: -------------------------------------------------------------------------------- 1 | 18 | 19 | -------------------------------------------------------------------------------- /runtime/ext/standard/crc.h: -------------------------------------------------------------------------------- 1 | 2 | /* 3 | * 4 | */ 5 | 6 | 7 | long crc32(char *p, unsigned int slen); 8 | 9 | -------------------------------------------------------------------------------- /runtime/ext/standard/data/bottom.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/standard/data/bottom.gif -------------------------------------------------------------------------------- /runtime/ext/standard/data/bottom.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/standard/data/bottom.jpg -------------------------------------------------------------------------------- /runtime/ext/standard/data/bottom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/standard/data/bottom.png -------------------------------------------------------------------------------- /runtime/ext/standard/network.h: -------------------------------------------------------------------------------- 1 | #define MAXPACKET 8192 2 | 3 | int php_checkdnsrr(char *host, char *typestr); 4 | int php_getprotobyname(char *name); 5 | int php_getservbyname(char *name, char *protocol); 6 | long php_ip2long(char *ip_address); 7 | int php_getmxrr(char *hostname, char *mx_list, char *weight_list); 8 | int php_fsockopen(char *hostname, int port, int domain, int type, int *errno_p, char **errstr_p); 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /runtime/ext/standard/php-std.sch: -------------------------------------------------------------------------------- 1 | (init-php-standard-lib) -------------------------------------------------------------------------------- /runtime/ext/standard/php-streams.sch: -------------------------------------------------------------------------------- 1 | (defresource stream 2 | "stream resource" 3 | name 4 | type 5 | file-ptr 6 | in-port 7 | out-port 8 | readable? 9 | writeable? 10 | timeout-sec 11 | timeout-usec 12 | blocking? 13 | context 14 | extended-ops) 15 | 16 | -------------------------------------------------------------------------------- /runtime/ext/standard/php-system.h: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | 4 | obj_t php_c_system(char *); 5 | 6 | -------------------------------------------------------------------------------- /runtime/ext/standard/posix-headers.h: -------------------------------------------------------------------------------- 1 | /* the headers for posix-c-bindings */ 2 | #ifndef PCC_MINGW 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #endif /* !PCC_MINGW */ 11 | -------------------------------------------------------------------------------- /runtime/ext/standard/streams.c: -------------------------------------------------------------------------------- 1 | //mingw #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | int fdzero(fd_set *fds) { 8 | FD_ZERO(fds); 9 | return 0; 10 | } 11 | 12 | int fdset(fd_set *fds, int fd) { 13 | FD_SET(fd, fds); 14 | return 0; 15 | } 16 | 17 | int fd_isset(fd_set *fds, int fd) { 18 | return FD_ISSET(fd, fds); 19 | } 20 | 21 | -------------------------------------------------------------------------------- /runtime/ext/standard/streams.h: -------------------------------------------------------------------------------- 1 | int fdzero(fd_set *fds); 2 | int fdset(fd_set *fds, int fd); 3 | int fd_isset(fd_set *fds, int fd); 4 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/array_merge.php: -------------------------------------------------------------------------------- 1 | 6 | "AceIce", 7 | " Basic"=> 8 | "Basic", 9 | " Blue"=> 10 | "Blue", 11 | " Bluecurve"=> 12 | "Bluecurve", 13 | " CVS"=> 14 | "CVS"); 15 | var_dump(array_merge("no theme", $foo)); 16 | 17 | ?> 18 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/array_unique.php: -------------------------------------------------------------------------------- 1 | "green", "red", "b" => "green", "blue", "red"); 5 | $input2 = array("a" => "green", "red", "b" => "green", "blue", "red"); 6 | var_dump($input); 7 | 8 | asort($input2, SORT_STRING); 9 | var_dump($input2); 10 | 11 | $result = array_unique($input); 12 | var_dump($result); 13 | 14 | $input = array(4,"4","3",4,3,"3"); 15 | 16 | $result = array_unique($input); 17 | var_dump($result); 18 | 19 | ?> -------------------------------------------------------------------------------- /runtime/ext/standard/tests/blocking.php: -------------------------------------------------------------------------------- 1 | This test thanks to groove :) 2 | 3 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/chmod.php: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/crc32.php: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/ereg.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/error-handler.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/exitcode.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/explode.php: -------------------------------------------------------------------------------- 1 | 17 | 18 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/exts.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/glob.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/is_readable.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/isset.php: -------------------------------------------------------------------------------- 1 | 26 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/nl2br.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/ord.php: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/parseini.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/setlocale.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/standard/tests/setlocale.php -------------------------------------------------------------------------------- /runtime/ext/standard/tests/shell_exec.php: -------------------------------------------------------------------------------- 1 | 16 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/soundex.php: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/str_pad.php: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/strtok.php: -------------------------------------------------------------------------------- 1 | "; 8 | $tok = strtok(" \n\t"); 9 | } 10 | 11 | 12 | $first_token = strtok('/something', '/'); 13 | $second_token = strtok('/'); 14 | var_dump ($first_token, $second_token); 15 | 16 | ?> -------------------------------------------------------------------------------- /runtime/ext/standard/tests/unserialize-error.php: -------------------------------------------------------------------------------- 1 | check that unserialize doesn't produce a fatal error when encountering bad data 2 | 14 | -------------------------------------------------------------------------------- /runtime/ext/standard/tests/utf.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/runtime/ext/standard/tests/utf.php -------------------------------------------------------------------------------- /runtime/ext/standard/tests/var_export.php: -------------------------------------------------------------------------------- 1 | 'bar'); 4 | var_export($a); 5 | 6 | $a=array("b","'c'"); 7 | var_export($a); 8 | 9 | ?> -------------------------------------------------------------------------------- /runtime/ext/standard/tests/version_compare.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/ext/standard/windows-flock.h: -------------------------------------------------------------------------------- 1 | 2 | #ifdef PCC_MINGW 3 | 4 | #define fsync _commit 5 | #define ftruncate chsize 6 | 7 | /* For flock() emulation */ 8 | 9 | #define LOCK_SH 1 10 | #define LOCK_EX 2 11 | #define LOCK_NB 4 12 | #define LOCK_UN 8 13 | 14 | extern int flock(int fd, int op); 15 | 16 | #endif 17 | -------------------------------------------------------------------------------- /runtime/ext/standard/windows-streams.h: -------------------------------------------------------------------------------- 1 | #ifdef PCC_MINGW 2 | 3 | //#define WIN32_LEAN_AND_MEAN 1 4 | //#include 5 | #undef SOCKET 6 | #include 7 | //#include 8 | 9 | #endif /* PCC_MINGW */ 10 | -------------------------------------------------------------------------------- /runtime/ext/xml/README: -------------------------------------------------------------------------------- 1 | - skip whitespace option in struct, cdata (libxml/expat discrepancy) 2 | - mysterious skip tagstart option 3 | - utf8 decoding 4 | - namespace functions 5 | - object method callback support (including array kludge) 6 | - encoding support 7 | 8 | there are some discrepancies with which callbacks get called, when they 9 | get called and with what data between expat and libxml 10 | 11 | -------------------------------------------------------------------------------- /runtime/ext/xml/make-lib.scm: -------------------------------------------------------------------------------- 1 | ;*---------------------------------------------------------------------*/ 2 | ;* The module */ 3 | ;*---------------------------------------------------------------------*/ 4 | (module __make-php-xml-lib 5 | 6 | (import (php-xml "xml.scm"))) 7 | -------------------------------------------------------------------------------- /runtime/ext/xml/php-xml.sch: -------------------------------------------------------------------------------- 1 | (init-php-xml-lib) 2 | -------------------------------------------------------------------------------- /runtime/ext/xml/scm-xml.h: -------------------------------------------------------------------------------- 1 | extern xmlSAXHandler scmHandlerStruct; 2 | extern xmlSAXHandlerPtr scmHandlerPtr; 3 | -------------------------------------------------------------------------------- /runtime/ext/xml/tests/data2.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | %incent; 5 | ]> 6 | 7 | Plain text. 8 | 9 | 10 | 11 | 12 | 13 | &included-entity; 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /runtime/ext/xml/tests/moldb.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Alanine 6 | ala 7 | A 8 | hydrophobic 9 | 10 | 11 | 12 | Lysine 13 | lys 14 | K 15 | charged 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /runtime/pcc_snprintf.h: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | 4 | #define HAVE_ISNAN 1 5 | #define HAVE_ISINF 1 6 | 7 | typedef size_t pcc_size_t; 8 | 9 | int pcc_snprintf(char *buf, pcc_size_t len, const char *format, ...); 10 | 11 | -------------------------------------------------------------------------------- /runtime/php-ext/pdo/pdo_init.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /runtime/php-ext/pdo/tests/basic.php: -------------------------------------------------------------------------------- 1 | 9 | done 10 | -------------------------------------------------------------------------------- /sa-tests/Makefile: -------------------------------------------------------------------------------- 1 | 2 | all: check 3 | 4 | check: 5 | PCC_CONF="./pcc-test.conf" TEST_PHP_EXECUTABLE="../compiler/pcc" ../compiler/pcc -f run-tests.php 6 | 7 | clean: 8 | -rm `find ./ -name "*.o" -or -name "*.a" -or -name "*.sc[hm]" -or -name "*.so" -or -iname "*.dll" -or -iname "*.heap"` 9 | -rm `find ./ -name "*.exp" -or -name "*.out" -or -name "*.rtexp" -or -iname "*.rtout"` 10 | -rm `find ./tests/ -iname "*.php"` 11 | # executables 12 | -rm `find ./ -perm +0111 -and -type f` 13 | -------------------------------------------------------------------------------- /sa-tests/pcc-test.conf.in: -------------------------------------------------------------------------------- 1 | ; sa test configuraton 2 | (default-commandline-lib php-std php-pcre php-curl) 3 | (library "../libs/") 4 | (debug-level 0) 5 | (ldflags standard @STD_LIBS@) 6 | (ldflags mysql @MYSQL_LIBS@) 7 | (ldflags odbc @ODBC_LIBS@) 8 | (ldflags sqlite @SQLITE_LIBS@) 9 | (ldflags curl @CURL_LIBS@) 10 | (ldflags xml @XML_LIBS@) 11 | (ldflags fastcgi @FCGI_LIBS@) 12 | -------------------------------------------------------------------------------- /sa-tests/tests/compile01.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | compile safe "Hello World" test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | --FILE-- 7 | 8 | --EXPECT-- 9 | --RTEXPECT-- 10 | Hello World 11 | -------------------------------------------------------------------------------- /sa-tests/tests/compile02.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | optimized "Hello World" test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -O 7 | --FILE-- 8 | 9 | --EXPECT-- 10 | --RTEXPECT-- 11 | Hello World 12 | -------------------------------------------------------------------------------- /sa-tests/tests/compile03.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | static "Hello World" test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | --static 7 | --FILE-- 8 | 9 | --EXPECT-- 10 | --RTEXPECT-- 11 | Hello World 12 | -------------------------------------------------------------------------------- /sa-tests/tests/extensions01.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | std extension test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -u php-std 7 | --FILE-- 8 | 9 | --EXPECT-- 10 | --RTEXPECT-- 11 | string 12 | -------------------------------------------------------------------------------- /sa-tests/tests/extensions02.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | pcre extension test 3 | --SKIPIF-- 4 | 11 | --POST-- 12 | --GET-- 13 | --PCCARGS-- 14 | -u php-pcre 15 | --FILE-- 16 | 17 | --EXPECT-- 18 | --RTEXPECT-- 19 | Goodby World 20 | -------------------------------------------------------------------------------- /sa-tests/tests/extensions03.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | xml extension test 3 | --SKIPIF-- 4 | 11 | --POST-- 12 | --GET-- 13 | --PCCARGS-- 14 | -u php-xml 15 | --FILE-- 16 |
This is my sample XML code
"; 19 | 20 | $parser = xml_parser_create(); 21 | echo xml_parse($parser,$data); 22 | 23 | ?> 24 | --EXPECT-- 25 | --RTEXPECT-- 26 | 1 27 | -------------------------------------------------------------------------------- /sa-tests/tests/extensions05.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | posix extension test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | --FILE-- 7 | 8 | --EXPECT-- 9 | --RTEXPECT-- 10 | %CWD% 11 | -------------------------------------------------------------------------------- /sa-tests/tests/fcgi01.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | fastcgi build 3 | --SKIPIF-- 4 | 11 | --PCCARGS-- 12 | --fastcgi myfcgi 13 | --FILE-- 14 | 19 | --POSTCOMPILE-- 20 | ls ./myfcgi.fcgi 21 | --EXPECT-- 22 | ./myfcgi.fcgi 23 | -------------------------------------------------------------------------------- /sa-tests/tests/fcgi02.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | fastcgi static build 3 | --SKIPIF-- 4 | 11 | --PCCARGS-- 12 | --fastcgi myfcgi-s --static 13 | --FILE-- 14 | 19 | --POSTCOMPILE-- 20 | ls ./myfcgi-s.fcgi 21 | --EXPECT-- 22 | ./myfcgi-s.fcgi 23 | -------------------------------------------------------------------------------- /sa-tests/tests/interpret01.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Interpreted "Hello World" test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -f 7 | --FILE-- 8 | 9 | --EXPECT-- 10 | Hello World 11 | -------------------------------------------------------------------------------- /sa-tests/tests/library01.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | library build test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -l library-one --force-rebuild 7 | --FILE-- 8 | 15 | --EXPECT-- 16 | --RTEXPECT-- 17 | -------------------------------------------------------------------------------- /sa-tests/tests/library01v.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | library verify (interpreted) 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -u library-one -f 7 | --FILE-- 8 | 17 | --EXPECT-- 18 | found 19 | test 20 | --RTEXPECT-- 21 | -------------------------------------------------------------------------------- /sa-tests/tests/library02.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | library optimized build test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -l library-two -O --force-rebuild 7 | --FILE-- 8 | 15 | --EXPECT-- 16 | --RTEXPECT-- 17 | -------------------------------------------------------------------------------- /sa-tests/tests/library02v.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | library optimized verify (interpreted) 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | -u library-two -f 7 | --FILE-- 8 | 18 | --EXPECT-- 19 | found 20 | hello world 21 | --RTEXPECT-- 22 | -------------------------------------------------------------------------------- /sa-tests/tests/micro01.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | microserver build 3 | --PCCARGS-- 4 | --microserver mymicro 5 | --FILE-- 6 | 11 | --POSTCOMPILE-- 12 | ./mymicro -h 13 | --EXPECT-- 14 | -h,--help This help message 15 | -d LEVEL Debug level 16 | -l LOG Log all requests to the specfied file 17 | -p PORT Server port number 18 | -------------------------------------------------------------------------------- /sa-tests/tests/micro02.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | microserver static build 3 | --PCCARGS-- 4 | --microserver mymicro-s --static 5 | --FILE-- 6 | 11 | --POSTCOMPILE-- 12 | ./mymicro-s -h 13 | --EXPECT-- 14 | -h,--help This help message 15 | -d LEVEL Debug level 16 | -l LOG Log all requests to the specfied file 17 | -p PORT Server port number 18 | -------------------------------------------------------------------------------- /sa-tests/tests/template: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "Hello World" test 3 | --POST-- 4 | --GET-- 5 | --PCCARGS-- 6 | --FILE-- 7 | 8 | --EXPECT-- 9 | --RTEXPECT-- 10 | -------------------------------------------------------------------------------- /tests/023-2.inc: -------------------------------------------------------------------------------- 1 | 5 | -------------------------------------------------------------------------------- /tests/ackermann.out: -------------------------------------------------------------------------------- 1 | Ack(3,5): 253 2 | -------------------------------------------------------------------------------- /tests/ackermann.php: -------------------------------------------------------------------------------- 1 | 18 | -------------------------------------------------------------------------------- /tests/ary3.out: -------------------------------------------------------------------------------- 1 | 1000 1000000 2 | -------------------------------------------------------------------------------- /tests/ary3.php: -------------------------------------------------------------------------------- 1 | =0; $i--) { 10 | $Y[$i] += $X[$i]; 11 | } 12 | } 13 | 14 | $last = $n-1; 15 | print "$Y[0] $Y[$last]\n"; 16 | } 17 | 18 | foo(); 19 | 20 | ?> 21 | -------------------------------------------------------------------------------- /tests/autoload-member.php: -------------------------------------------------------------------------------- 1 | success(); 15 | -------------------------------------------------------------------------------- /tests/autoload-static.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/callback.php: -------------------------------------------------------------------------------- 1 | 13 | 14 | 15 | 16 |

It's like comparing apples to oranges. 17 | 18 | 19 | 20 | 25 | -------------------------------------------------------------------------------- /tests/class-case.php: -------------------------------------------------------------------------------- 1 | ".$this->bazbip."\n"; 7 | echo "-> ".$this->BaZBiP."\n"; 8 | } 9 | } 10 | 11 | $a = new test; 12 | var_dump($a); 13 | $a->foobar(); 14 | $b = get_class_methods($a); 15 | var_dump($b); 16 | 17 | ?> -------------------------------------------------------------------------------- /tests/class-constants.php: -------------------------------------------------------------------------------- 1 | showConstant(); 15 | 16 | ?> -------------------------------------------------------------------------------- /tests/class-functions.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/closingtag.php: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /tests/declare-order.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/dollardollar.php: -------------------------------------------------------------------------------- 1 | 23 | -------------------------------------------------------------------------------- /tests/escapingtest.php: -------------------------------------------------------------------------------- 1 | 5 | This is true. 6 | 9 | This is \false. 10 | 17 | This is 'true'. 18 | 21 | This is false. 22 | 25 | -------------------------------------------------------------------------------- /tests/fibo.out: -------------------------------------------------------------------------------- 1 | 34 2 | -------------------------------------------------------------------------------- /tests/fibo.php: -------------------------------------------------------------------------------- 1 | 12 | -------------------------------------------------------------------------------- /tests/forlooptest.php: -------------------------------------------------------------------------------- 1 | 10) { 12 | break; 13 | } 14 | print $i; 15 | } 16 | 17 | /* example 3 */ 18 | 19 | 12; 20 | 21 | $i = 1; 22 | for (;;) { 23 | if ($i > 10) { 24 | break; 25 | } 26 | print $i; 27 | $i++; 28 | } 29 | 30 | 31 | /* example 4 */ 32 | 33 | for ($i = 1; $i <= 10; print $i, $i++); 34 | 35 | ?> -------------------------------------------------------------------------------- /tests/funorder.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/hash1.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/hello.out: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /tests/hello.php: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /tests/includetest-once.inc: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /tests/includetest.inc: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /tests/logical.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/min-max-nums.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/opendir.php: -------------------------------------------------------------------------------- 1 | 11 | -------------------------------------------------------------------------------- /tests/phpbug.php: -------------------------------------------------------------------------------- 1 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /tests/printtag.php: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/ref.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /tests/ref1.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/ref2.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/ref3.php: -------------------------------------------------------------------------------- 1 | a = $b; 13 | $d->b = $c; 14 | $d->a1 =& $b; 15 | $d->a2 =& $c; 16 | $d->a3[] = $a; 17 | $d->a4[] = $b; 18 | $d->a5[] = $c; 19 | $d->a6[] =& $a; 20 | $d->a7[] =& $b; 21 | $d->a8[] =& $c; 22 | 23 | 24 | var_dump($a); 25 | var_dump($b); 26 | var_dump($c); 27 | var_dump($d); 28 | 29 | ?> -------------------------------------------------------------------------------- /tests/refhash.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/remarkably_broken.php: -------------------------------------------------------------------------------- 1 | 31 | -------------------------------------------------------------------------------- /tests/resources.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/shared-environment.inc: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/shared-environment.php: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /tests/shutdown_function.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/simple-assignment.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/simple-string.php: -------------------------------------------------------------------------------- 1 | 13 | -------------------------------------------------------------------------------- /tests/smObject.php: -------------------------------------------------------------------------------- 1 | debugLog("foo"); 9 | 10 | SM_fatalErrorPage("oops"); 11 | 12 | ?> -------------------------------------------------------------------------------- /tests/sort.php: -------------------------------------------------------------------------------- 1 | 12 | 13 | -------------------------------------------------------------------------------- /tests/string-ref.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/stringtest.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/superglobal_bindings.php: -------------------------------------------------------------------------------- 1 | 24 | 25 | -------------------------------------------------------------------------------- /tests/tags.php: -------------------------------------------------------------------------------- 1 | 2 | This is a shortcut for "" 3 | 4 | 5 | 6 | 9 | 10 | <% echo ("You may optionally use ASP-style tags"); %> 11 | 12 | <%= $variable; # This is a shortcut for "<% echo . . ." %> 13 | -------------------------------------------------------------------------------- /tests/unset.php: -------------------------------------------------------------------------------- 1 | 'one', 2 => 'two', 3 => 'three' ); 4 | unset( $a[2] ); 5 | /* will produce an array that would have been defined as 6 | $a = array( 1=>'one', 3=>'three'); 7 | and NOT 8 | $a = array( 1 => 'one', 2 => 'three'); 9 | */ 10 | 11 | print_r($a); 12 | 13 | $a=5;$b=array(1);$c="string"; 14 | echo "i1: ".isset($a,$b,$c)."\n"; 15 | echo "i2: ".isset($a,$b,$c,$d)."\n"; 16 | unset($a,$b,$c); 17 | echo "i3: ".isset($a,$b,$c)."\n"; 18 | 19 | ?> -------------------------------------------------------------------------------- /tests/varargs.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/versions.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/zdirname.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /tests/zdo_while.php: -------------------------------------------------------------------------------- 1 | 0); 7 | ?> 8 | 9 | -------------------------------------------------------------------------------- /tests/zeval.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /tests/zeval1.php: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /tests/zfun_inside_eval.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /tests/zfunction_falling.php: -------------------------------------------------------------------------------- 1 | 12 | 13 | -------------------------------------------------------------------------------- /tests/zheyheyhey.php: -------------------------------------------------------------------------------- 1 | 23 | -------------------------------------------------------------------------------- /tests/znested_functions.php: -------------------------------------------------------------------------------- 1 | 19 | -------------------------------------------------------------------------------- /tests/znested_if_elseif_else.php: -------------------------------------------------------------------------------- 1 | 15 | -------------------------------------------------------------------------------- /tests/zrecursive_function.php: -------------------------------------------------------------------------------- 1 | 10 | -------------------------------------------------------------------------------- /tests/zregression-2.inc: -------------------------------------------------------------------------------- 1 | 2 | This is Finish.phtml. This file is supposed to be included 3 | from regression_test.phtml. This is normal HTML. 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /tests/zsimple_if_condition.php: -------------------------------------------------------------------------------- 1 | 0) { echo "Yes"; } ?> 2 | -------------------------------------------------------------------------------- /tests/zsimple_if_else.php: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /tests/zsimple_if_elsif_else.php: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /tests/zsimple_while_loop.php: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /tests/zstack_after_return.php: -------------------------------------------------------------------------------- 1 | 14 | -------------------------------------------------------------------------------- /tests/zstring_scanner.php: -------------------------------------------------------------------------------- 1 | 3 | -------------------------------------------------------------------------------- /tidbits/function-example/fun.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include "fun.h" 3 | 4 | funstruct bfunstruct = {afun}; 5 | funstruct *afunstruct = &bfunstruct; 6 | 7 | 8 | int fun(int (*foo)(int)) { 9 | foo(12); 10 | return 42; 11 | } 12 | 13 | 14 | int afun(int arg) { 15 | printf("arg is %d\n", arg); 16 | return 24; 17 | } 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /tidbits/function-example/fun.h: -------------------------------------------------------------------------------- 1 | int fun(int (*foo)(int)); 2 | int afun(int arg); 3 | 4 | typedef struct funstruct { 5 | int (*fun) (int); 6 | } funstruct; 7 | 8 | 9 | funstruct *afunstruct; 10 | 11 | -------------------------------------------------------------------------------- /tidbits/libinclude-test/smexample/BUILD: -------------------------------------------------------------------------------- 1 | interpret the script by cd'ing to home/ and saying 2 | 3 | pcc -I `pwd`/../redist/pear -f index.php 4 | 5 | compile the library by saying: 6 | 7 | pcc -rm -d 5 -l smexample home/index.php admin/common.inc redist/pear/apear.php --strip-path redist/pear 8 | 9 | don't forget to add --force-rebuild if you changed code generation 10 | 11 | -------------------------------------------------------------------------------- /tidbits/libinclude-test/smexample/admin/common.inc: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /tidbits/libinclude-test/smexample/home/index.php: -------------------------------------------------------------------------------- 1 | 8 | -------------------------------------------------------------------------------- /tidbits/libinclude-test/smexample/redist/pear/apear.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tidbits/libinclude-test/useit/useit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tidbits/libinclude-test/useit/useit -------------------------------------------------------------------------------- /tidbits/libinclude-test/useit/useit.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tools/libwebserver/Authors: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tools/libwebserver/Authors -------------------------------------------------------------------------------- /tools/libwebserver/COPYRIGHT: -------------------------------------------------------------------------------- 1 | Copyright 2002, 2003 Luis Figueiredo. All rights reserved 2 | 3 | See the LICENSE file 4 | 5 | The origin of this software must not be misrepresented, either by 6 | explicit claim or by omission. Since few users ever read sources, 7 | credits must appear in the documentation. 8 | -------------------------------------------------------------------------------- /tools/libwebserver/Win32/help/help.cfg: -------------------------------------------------------------------------------- 1 | [LIBWEBSERVER] 2 | LOG=help.log 3 | PORT=81 4 | USESSL=0 5 | LOCAL=0 6 | DYNVAR=0 7 | 8 | 9 | [PERSONAL_CONF] 10 | PORT=Portability 11 | MOST=general key guard 12 | IP=127.0.0.1 13 | 14 | -------------------------------------------------------------------------------- /tools/libwebserver/Win32/help/help.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tools/libwebserver/Win32/help/help.ico -------------------------------------------------------------------------------- /tools/libwebserver/bugs: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /tools/libwebserver/examples/SoundRecorder/Makefile: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | all: 6 | cd src; make 7 | 8 | clean: 9 | cd src; make clean 10 | rm -f SoundRecorder 11 | -------------------------------------------------------------------------------- /tools/libwebserver/examples/SoundRecorder/include/debug.h: -------------------------------------------------------------------------------- 1 | /* by Luis Figueiredo (stdio@netc.pt) 2 | * 3 | * 4 | * date: Sat Mar 30 14:16:05 GMT 2002 5 | * 6 | * DEBUG macros 7 | * 8 | */ 9 | 10 | #ifndef _DEBUG_H_ 11 | #define _DEBUG_H_ 12 | 13 | #ifdef HAVE_CONFIG_H 14 | #include "config.h" 15 | #endif 16 | 17 | #ifdef DEBUG 18 | #define IFDEBUG(x) x 19 | #else 20 | #define IFDEBUG(x) 21 | #endif 22 | 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /tools/libwebserver/examples/cgi-bin/index.cgi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tools/libwebserver/examples/cgi-bin/index.cgi -------------------------------------------------------------------------------- /tools/libwebserver/examples/cgi-bin/simple.cgi: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | 4 | 5 | echo -ne "Content-type: text/html\r\n\r\n" 6 | 7 | echo -e "\n" 8 | echo -e "\n" 9 | 10 | echo -e "THis is a simple cgi file\n" 11 | echo -e "$QUERY_STRING" 12 | echo -e "" 13 | echo -e "" 14 | 15 | -------------------------------------------------------------------------------- /tools/libwebserver/help/engine.h: -------------------------------------------------------------------------------- 1 | /* 2 | * by data2header by Luis Figueiredo (stdio@netc.pt) 3 | */ 4 | #ifndef _ENGINE_H_ 5 | #define _ENGINE_H_ 6 | 7 | char engine[]=""; 8 | 9 | #endif 10 | -------------------------------------------------------------------------------- /tools/libwebserver/help/help.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tools/libwebserver/help/help.c -------------------------------------------------------------------------------- /tools/libwebserver/help/help.cfg: -------------------------------------------------------------------------------- 1 | [LIBWEBSERVER] 2 | LOG=help.log 3 | PORT=81 4 | USESSL=0 5 | LOCAL=0 6 | DYNVAR=0 7 | 8 | 9 | [PERSONAL_CONF] 10 | PORT=Portability 11 | MOST=general key guard 12 | IP=127.0.0.1 13 | 14 | -------------------------------------------------------------------------------- /tools/libwebserver/help/makeheader.bat: -------------------------------------------------------------------------------- 1 | type ..\help.html\info.html |..\tools\data2header.exe info >info.h 2 | type ..\help.html\functions.html |..\tools\data2header.exe functions >functions.h 3 | type ..\help.html\examples.html |..\tools\data2header.exe examples >examples.h 4 | type ..\help.html\security.html |..\tools\data2header.exe security >security.h -------------------------------------------------------------------------------- /tools/libwebserver/include/module.h: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | #ifndef _MODULE_H_ 14 | #define _MODULE_H_ 15 | 16 | struct module { 17 | const char *handle; 18 | void (func)(); 19 | 20 | }; 21 | 22 | 23 | 24 | 25 | #endif -------------------------------------------------------------------------------- /tools/libwebserver/project: -------------------------------------------------------------------------------- 1 | Initial ideia, (could probably change some features...) Implents web interface to your programs, usefull for configuration, stats, and whatever you want to do without dependencies of a web server, easy configurable, logging, easy to implement. Programed in C, intended to be portable to various systems 2 | -------------------------------------------------------------------------------- /tools/libwebserver/regards: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tools/libwebserver/regards -------------------------------------------------------------------------------- /tools/libwebserver/tools/checkpid: -------------------------------------------------------------------------------- 1 | 2 | echo "checking pid $1"; 3 | 4 | while true; do echo -e "\33[2J\33[0;0H";cat /proc/$1/status ;done 5 | -------------------------------------------------------------------------------- /tools/libwebserver/tools/data2header.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/tools/libwebserver/tools/data2header.exe -------------------------------------------------------------------------------- /tools/libwebserver/tools/myvc_install.bat: -------------------------------------------------------------------------------- 1 | copy ..\bin\libwebserver.lib "C:\Programas\Microsoft Visual Studio\VC98\Lib\libwebserver.lib" 2 | -------------------------------------------------------------------------------- /tools/libwebserver/tools/win2unix.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | for i in `find . -name "*" -xtype f`; do echo "Messing with $i";cat $i |tr -d \\r >.1; mv .1 $i ; done 3 | -------------------------------------------------------------------------------- /tools/profiler/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-php-profiler-lib 2 | (import (mystical-profiler "profiler.scm")) ) 3 | 4 | -------------------------------------------------------------------------------- /tools/profiler/profiler.init: -------------------------------------------------------------------------------- 1 | ;-*- bee -*- 2 | ;*---------------------------------------------------------------------*/ 3 | ;* Addition includes */ 4 | ;*---------------------------------------------------------------------*/ 5 | (set! *additional-include-foreign* 6 | (cons "sys/time.h" (cons "time.h" *additional-include-foreign*))) 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /tools/readline/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-pcc-readline-lib 2 | (import (pcc-readline "readline.scm") 3 | (pcc-history "history.scm"))) 4 | 5 | -------------------------------------------------------------------------------- /tools/shortpath/Makefile: -------------------------------------------------------------------------------- 1 | PCC_ROOT = ../.. 2 | include $(PCC_ROOT)/bigloo-rules.mk 3 | 4 | 5 | 6 | CFLAGS = $(CUNSAFEFLAGS) 7 | 8 | all: shortpath -------------------------------------------------------------------------------- /webconnect/apache1/windows-apache.h: -------------------------------------------------------------------------------- 1 | #include <../runtime/ext/standard/windows-time.h> 2 | 3 | #undef SOCKET 4 | #include 5 | #include 6 | #include "apache_request.h" 7 | #include "apache_cookie.h" 8 | -------------------------------------------------------------------------------- /webconnect/apache2/win32/libapr-c.def: -------------------------------------------------------------------------------- 1 | LIBRARY libapr.dll 2 | EXPORTS 3 | apr_app_init_complete DATA 4 | apr_day_snames DATA 5 | apr_dbg_log 6 | apr_file_printf 7 | apr_month_snames DATA 8 | apr_os_level DATA 9 | apr_pool_cleanup_null 10 | apr_psprintf 11 | apr_pstrcat 12 | apr_snprintf 13 | apr_table_do 14 | apr_terminate 15 | -------------------------------------------------------------------------------- /webconnect/apache2/windows-apache2.h: -------------------------------------------------------------------------------- 1 | #include <../runtime/ext/standard/windows-time.h> 2 | 3 | #undef SOCKET 4 | 5 | #include "httpd.h" 6 | #include "http_config.h" 7 | #include "http_core.h" 8 | #include "http_log.h" 9 | #include "http_main.h" 10 | #include "http_protocol.h" 11 | #include "http_request.h" 12 | #include "util_script.h" 13 | #include "http_connection.h" 14 | 15 | #include "apache_request.h" 16 | #include "apache_cookie.h" 17 | -------------------------------------------------------------------------------- /webconnect/cgi/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-cgi-lib 2 | (import (cgi "cgi.scm")) 3 | (eval (export-all)) ) 4 | 5 | -------------------------------------------------------------------------------- /webconnect/fastcgi/README: -------------------------------------------------------------------------------- 1 | I'm using Apache 2, mod_fastcgi (not mod_fcgi), and mod_actions. 2 | 3 | 4 | AddHandler fastcgi-script .fcgi 5 | #FastCgiWrapper /usr/lib/apache2/suexec2 6 | FastCgiIpcDir /var/lib/apache2/fastcgi 7 | 8 | 9 | and 10 | 11 | AddHandler pcc-handler .php 12 | Action pcc-handler /cgi-bin/pcc.fcgi 13 | 14 | pcc.fcgi has to be copied to /usr/lib/cgi-bin, or wherever your 15 | cgi-bin dir is. Or make a symlink. 16 | 17 | -------------------------------------------------------------------------------- /webconnect/fastcgi/c-fcgi.h: -------------------------------------------------------------------------------- 1 | 2 | int pcc_fcgi_spawn(int numchildren); 3 | 4 | -------------------------------------------------------------------------------- /webconnect/fastcgi/fastcgi-main.scm: -------------------------------------------------------------------------------- 1 | (module fastcgi-main 2 | (library php-runtime) 3 | (library phpeval) 4 | (library webconnect) 5 | (library profiler) 6 | (library fastcgi) 7 | (main main)) 8 | 9 | (define (main argv) 10 | (fastcgi-main argv)) 11 | -------------------------------------------------------------------------------- /webconnect/fastcgi/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-cgi-lib 2 | (import (fastcgi "fastcgi.scm")) 3 | (eval (export-all)) ) 4 | 5 | -------------------------------------------------------------------------------- /webconnect/make-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-webconnect-lib 2 | (import (webconnect "webconnect.scm")) 3 | (eval (export-all)) ) 4 | 5 | -------------------------------------------------------------------------------- /webconnect/micro/make-mhttpd-lib.scm: -------------------------------------------------------------------------------- 1 | (module __make-mhttpd-lib 2 | (import (micro-httpd "microhttpd.scm")) 3 | (eval (export-all)) ) 4 | 5 | -------------------------------------------------------------------------------- /webconnect/tests/auth/.htaccess: -------------------------------------------------------------------------------- 1 | AuthType Basic 2 | AuthUserFile /tmp/htpasswd 3 | Require valid-user 4 | AuthName "PCC Auth" 5 | -------------------------------------------------------------------------------- /webconnect/tests/auth/auth.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /webconnect/tests/info.php: -------------------------------------------------------------------------------- 1 | \n"; 4 | 5 | phpinfo(); 6 | 7 | ?> 8 |

 9 | 
20 | 
21 |
22 | 23 | 24 |
25 | -------------------------------------------------------------------------------- /zend-tests/README: -------------------------------------------------------------------------------- 1 | 2 | All of this code, including the test program and the test templates, originally came from the 3 | Zend PHP implementation, freely available at www.php.net under the PHP License. 4 | 5 | It has been modified in some cases to take advantage of features in Roadsend PHP that aren't 6 | available in Zend PHP, and to remove tests for some features that aren't implemented in 7 | Roadsend PHP. 8 | 9 | -------------------------------------------------------------------------------- /zend-tests/pcc-test.conf: -------------------------------------------------------------------------------- 1 | ; sa test configuraton 2 | (default-commandline-lib php-std php-pcre php-curl) 3 | (library "../libs/") 4 | (debug-level 0) 5 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/001.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Trivial "Hello World" test 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | Hello World 7 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/006.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Add 3 variables together and print result 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | 6 7 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/007.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Multiply 3 variables and print result 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | 64 7 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/008.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Divide 3 variables and print result 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | 3 7 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/009.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Subtract 3 variables and print result 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | 10 7 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/010.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing | and & operators 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | 8 7 | -------------------------------------------------------------------------------- /zend-tests/tests/basic/bug20539.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #20539 (PHP CLI Segmentation Fault) 3 | --INI-- 4 | session.auto_start=1 5 | session.save_handler=files 6 | --FILE-- 7 | 10 | --EXPECT-- 11 | good :) 12 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/abstract_final.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 A final method cannot be abstract 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 14 | --EXPECTF-- 15 | 16 | Fatal error: Cannot use the final modifier on an abstract class member in %s on line %d 17 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/bug24399.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24399 (is_subclass_of() crashes when parent class doesn't exist) 3 | --FILE-- 4 | 11 | --EXPECT-- 12 | bool(false) 13 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/bug24445.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24445 (get_parent_class() returns the current class when passed an object) 3 | --FILE-- 4 | 10 | --EXPECT-- 11 | bool(false) 12 | bool(false) 13 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/bug27468.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #27468 (foreach in __destruct() causes segfault) 3 | --FILE-- 4 | x as $x); 8 | } 9 | } 10 | new foo(); 11 | echo 'OK'; 12 | ?> 13 | --EXPECTF-- 14 | Notice: Undefined property: foo::$x in %sbug27468.php on line 4 15 | 16 | Warning: Invalid argument supplied for foreach() in %sbug27468.php on line 4 17 | OK 18 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/bug29446.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #29446 (ZE allows multiple declarations of the same class constant) 3 | --FILE-- 4 | 18 | --EXPECTF-- 19 | Fatal error: Cannot redefine class constant testClass::TEST_CONST in %s on line 5 -------------------------------------------------------------------------------- /zend-tests/tests/classes/ctor_name_clash.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 The child class can re-use the parent class name for a function member 3 | --FILE-- 4 | base(); 19 | ?> 20 | --EXPECTF-- 21 | base::base 22 | derived::base 23 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/final_abstract.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 A final method cannot be abstract 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 14 | --EXPECTF-- 15 | 16 | Fatal error: Cannot use the final modifier on an abstract class member in %s 17 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/interface_class.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 A class can only implement interfaces 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 13 | --EXPECTF-- 14 | Fatal error: derived cannot implement base - it is not an interface in %s on line %d 15 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/interface_instantiate.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 An interface cannot be instantiated 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 15 | --EXPECTF-- 16 | Fatal error: Cannot instantiate interface if_a in %s on line %d 17 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/interface_member.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 An interface cannot have properties 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 12 | --EXPECTF-- 13 | Fatal error: Interfaces may not include member variables in %s on line %d 14 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/interface_method.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 An interface method must be abstract 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 13 | --EXPECTF-- 14 | 15 | Fatal error: Interface function if_a::err() cannot contain body %s on line %d 16 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/interface_method_final.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 An interface method cannot be final 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 13 | --EXPECTF-- 14 | 15 | Fatal error: Cannot use the final modifier on an abstract class member in %s on line %d 16 | -------------------------------------------------------------------------------- /zend-tests/tests/classes/interface_method_private.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 An interface method cannot be private 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 13 | --EXPECTF-- 14 | 15 | Fatal error: Access type for interface method if_a::err() must be omitted in %s on line %d 16 | -------------------------------------------------------------------------------- /zend-tests/tests/func/001.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Strlen() function test 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | 6 7 | -------------------------------------------------------------------------------- /zend-tests/tests/func/002.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Static variables in functions 3 | --FILE-- 4 | 0) { echo "Yes"; } ?> 5 | --EXPECT-- 6 | Yes 7 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/002.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Simple While Loop Test 3 | --FILE-- 4 | 11 | --EXPECT-- 12 | 123456789 13 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/003.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Simple Switch Test 3 | --FILE-- 4 | 18 | --EXPECT-- 19 | good 20 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/004.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Simple If/Else Test 3 | --FILE-- 4 | 12 | --EXPECT-- 13 | good 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/005.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Simple If/ElseIf/Else Test 3 | --FILE-- 4 | 15 | --EXPECT-- 16 | good 17 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/006.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Nested If/ElseIf/Else Test 3 | --FILE-- 4 | 22 | --EXPECT-- 23 | good 24 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/007.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Function call with global and static variables 3 | --FILE-- 4 | 26 | --EXPECT-- 27 | 1 5 2 2 10 5 2 5 3 2 10 5 3 5 4 2 28 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/008.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing recursive function 3 | --FILE-- 4 | 17 | --EXPECT-- 18 | 1 2 3 4 5 6 7 8 9 19 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/009.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing function parameter passing 3 | --FILE-- 4 | 10 | --EXPECT-- 11 | 3 12 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/010.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing function parameter passing with a return value 3 | --FILE-- 4 | 12 | --EXPECT-- 13 | 2 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/011.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing nested functions 3 | --FILE-- 4 | 22 | --EXPECT-- 23 | 4 Hello 4 24 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/012.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing stack after early function return 3 | --FILE-- 4 | 17 | --EXPECT-- 18 | HelloHello 19 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/013.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing eval function 3 | --FILE-- 4 | 9 | --EXPECT-- 10 | Hello 11 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/014.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing eval function inside user-defined function 3 | --FILE-- 4 | 12 | --EXPECT-- 13 | Hello 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/015.inc: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/015.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing include 3 | --FILE-- 4 | 7 | --EXPECT-- 8 | Hello 9 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/016.inc: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/016.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing user-defined function in included file 3 | --FILE-- 4 | 8 | --EXPECT-- 9 | Hello 10 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/017.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing user-defined function falling out of an If into another 3 | --FILE-- 4 | 17 | --EXPECT-- 18 | 1 19 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/018.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | eval() test 3 | --FILE-- 4 | 2 | This is Finish.phtml. This file is supposed to be included 3 | from regression_test.phtml. This is normal HTML. 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/026.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing string scanner confirmance 3 | --FILE-- 4 | 5 | --EXPECT-- 6 | " \'\n\'a\\b\ 7 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/027.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Testing do-while loop 3 | --FILE-- 4 | 0); 10 | ?> 11 | --EXPECT-- 12 | 321 13 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/034.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #12647 (Locale settings affecting float parsing) 3 | --SKIPIF-- 4 | 9 | --FILE-- 10 | 16 | --EXPECT-- 17 | 3,14 18 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bison1.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bison weirdness 3 | --FILE-- 4 | 8 | --EXPECT-- 9 | blah- 10 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug17115.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #17115 (lambda functions produce segfault with static vars) 3 | --FILE-- 4 | 13 | --EXPECT-- 14 | int(0) 15 | int(1) 16 | int(2) 17 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug18872.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #18872 (class constant used as default parameter) 3 | --FILE-- 4 | 16 | --EXPECT-- 17 | 3 18 | 3 19 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug19566.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #19566 (get_declared_classes() segfaults) 3 | --FILE-- 4 | 9 | --EXPECTF-- 10 | int(%d) 11 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug21094.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #21094 (set_error_handler not accepting methods) 3 | --FILE-- 4 | 15 | --EXPECTF-- 16 | [1024] errstr: test, errfile: %s, errline: %d 17 | 18 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug21669.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #21669 ("$obj = new $this->var;" doesn't work) 3 | --FILE-- 4 | name; /* Parse error */ 15 | return $obj; 16 | } 17 | } 18 | $factory = new Factory; 19 | $test = $factory->create(); 20 | $test->say_hello(); 21 | ?> 22 | --EXPECT-- 23 | Hello world 24 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug21820.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #21820 ("$arr['foo']" generates bogus E_NOTICE, should be E_PARSE) 3 | --FILE-- 4 | 'bar'); 9 | echo "$arr['foo']"; 10 | 11 | ?> 12 | --EXPECTREGEX-- 13 | Parse error: (parse|syntax) error, .*expecting `?T_STRING'? or `?T_VARIABLE'? or `?T_NUM_STRING'? in .*bug21820.php on line .* 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug21849.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #21849 (self::constant doesn't work as method's default parameter) 3 | --FILE-- 4 | 15 | --EXPECT-- 16 | fubar 17 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug22690.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #22690 (ob_start() is broken with create_function() callbacks) 3 | --FILE-- 4 | 9 | bar 10 | --EXPECT-- 11 | BAR 12 | BAR 13 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug23279.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #23279 (exception handler stops after first function call) 3 | --FILE-- 4 | 15 | --EXPECT-- 16 | Goodbye Cruel World 17 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug23489.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #23489 (ob_start() is broken with method callbacks) 3 | --FILE-- 4 | 21 | failure 22 | --EXPECT-- 23 | success 24 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug23584.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #23584 (error line numbers off by one when using #!php) 3 | --FILE-- 4 | #!php 5 | 12 | --EXPECTREGEX-- 13 | Notice: Undefined variable:.*foo in .* on line 6 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug23624.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #23624 (foreach leaves current array key as null) 3 | --FILE-- 4 | $value); 8 | var_dump(current($arr)); 9 | ?> 10 | --EXPECT-- 11 | string(3) "one" 12 | bool(false) 13 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug23922.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #23922 (scope doesn't properly propagate into internal functions) 3 | --FILE-- 4 | foo == 1'); } 11 | 12 | function as_expr() 13 | { assert($this->foo == 1); } 14 | } 15 | 16 | $foo = new foo(); 17 | $foo->as_expr(); 18 | $foo->as_string(); 19 | ?> 20 | --EXPECT-- 21 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug24396.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24396 (global $$variable broken) 3 | --FILE-- 4 | 1, 'b' => 2, 'c' => 3); 7 | 8 | foreach($arr as $k=>$v) { 9 | global $$k; // comment this out and it works in PHP 5 too.. 10 | 11 | echo "($k => $v)\n"; 12 | 13 | $$k = $v; 14 | } 15 | ?> 16 | --EXPECT-- 17 | (a => 1) 18 | (b => 2) 19 | (c => 3) 20 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug24403.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24403 (scope doesn't properly propagate into internal functions) 3 | --FILE-- 4 | a) ? '\'.\$p[\'\\1\'].\'' : 14 | '\'.\$r[\'\\1\'].\'')", 15 | "{a} b {c}"); 16 | } 17 | } 18 | new a(); 19 | ?> 20 | --EXPECT-- 21 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug24436.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24436 (isset() and empty() produce errors with non-existent variables in objects) 3 | --FILE-- 4 | test[0][0])) { print "test1";} 8 | if (!isset($this->test[0][0])) { print "test2";} 9 | } 10 | } 11 | 12 | $test1 = new test(); 13 | ?> 14 | --EXPECT-- 15 | test1test2 16 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug24573.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24573 (debug_backtrace() crashes if $this is set to null) 3 | --FILE-- 4 | Bar(); 18 | 19 | echo "OK\n"; 20 | 21 | ?> 22 | --EXPECTF-- 23 | 24 | Fatal error: Cannot re-assign $this in %s on line %d -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug24783.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #24783 ($key not binary safe in "foreach($arr as $key => $val)") 3 | --FILE-- 4 | "foo\0bar"); 7 | foreach ($arr as $key => $val) { 8 | echo strlen($key), ': '; 9 | echo urlencode($key), ' => ', urlencode($val), "\n"; 10 | } 11 | ?> 12 | --EXPECT-- 13 | 7: foo%00bar => foo%00bar 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug26182.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #26182 (Object properties created redundantly) 3 | --INI-- 4 | error_reporting=4095 5 | --FILE-- 6 | x)) { 12 | //just for demo 13 | } 14 | } 15 | } 16 | 17 | $t = new A (); 18 | 19 | print_r($t); 20 | 21 | ?> 22 | --EXPECT-- 23 | A Object 24 | ( 25 | ) 26 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug26869.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #26869 (constant as the key of static array) 3 | --FILE-- 4 | 1); 7 | var_dump($a); 8 | var_dump(isset($a[A])); 9 | ?> 10 | --EXPECT-- 11 | array(1) { 12 | [1]=> 13 | int(1) 14 | } 15 | bool(true) 16 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug27354.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #27354 (Modulus operator crashes PHP) 3 | --FILE-- 4 | 10 | --EXPECTF-- 11 | int(%i) 12 | int(%i) 13 | int(%i) 14 | int(%i) 15 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug27443.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #27443 (defined() returns wrong type) 3 | --FILE-- 4 | 7 | --EXPECT-- 8 | boolean 9 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug28213.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #28213 (crash in debug_print_backtrace in static methods) 3 | --FILE-- 4 | 9 | --EXPECTREGEX-- 10 | .*#1\s*include.* 11 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug28800.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #28800 (Incorrect string to number conversion for strings starting with 'inf') 3 | --FILE-- 4 | 10 | --EXPECT-- 11 | 0 12 | 0 13 | 0 14 | 0 15 | 0 16 | 0 17 | 18 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug30726.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #30726 (-.1 like numbers are not being handled correctly) 3 | --FILE-- 4 | 7 | --EXPECT-- 8 | 1 9 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug32924.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Bug #32924 (prepend does not add file to included files) 3 | --INI-- 4 | include_path={PWD} 5 | auto_prepend_file=inc.inc 6 | --FILE-- 7 | 11 | END 12 | --EXPECT-- 13 | Included! 14 | END 15 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/bug38579.inc: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/each_binary_safety.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Binary safety of each() for both keys and values 3 | --FILE-- 4 | "foo\0bar"); 7 | while (list($key, $val) = each($arr)) { 8 | echo strlen($key), ': '; 9 | echo urlencode($key), ' => ', urlencode($val), "\n"; 10 | } 11 | ?> 12 | --EXPECT-- 13 | 7: foo%00bar => foo%00bar 14 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/inc.inc: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/type_hints_002.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 type hinting 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | f(new P); 17 | $o->f(); 18 | $o->f(NULL); 19 | ?> 20 | --EXPECT-- 21 | object(P)#2 (0) { 22 | } 23 | - 24 | NULL 25 | - 26 | NULL 27 | - 28 | 29 | -------------------------------------------------------------------------------- /zend-tests/tests/lang/type_hints_003.phpt: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | ZE2 type hinting 3 | --SKIPIF-- 4 | 5 | --FILE-- 6 | 12 | --EXPECTF-- 13 | 14 | Fatal error: Default value for parameters with a class type hint can only be NULL in %stype_hints_003.php on line 3 15 | -------------------------------------------------------------------------------- /zend-tests/tests/strings/002.phpt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/weyrick/roadsend-php/d6301a897b1a02d7a85bdb915bea91d0991eb158/zend-tests/tests/strings/002.phpt --------------------------------------------------------------------------------