[parrot/parrot] 60cfac: [GH #836] Improve parsing pmc2c UNUSED arguments

GitHub noreply at github.com
Thu Sep 27 19:39:06 UTC 2012


  Branch: refs/heads/threads
  Home:   https://github.com/parrot/parrot
  Commit: 60cfaca0ca97ec9a47893eb8037015e428ce56f6
      https://github.com/parrot/parrot/commit/60cfaca0ca97ec9a47893eb8037015e428ce56f6
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-18 (Tue, 18 Sep 2012)

  Changed paths:
    M lib/Parrot/Pmc2c/Method.pm

  Log Message:
  -----------
  [GH #836] Improve parsing pmc2c UNUSED arguments

UNUSED(arg) amcros are now detected in pmc bodies and change the argument declaration
to SHIM().
Empty bodies with return 1; are now detected and the two args are SHIMed.
UNUSED(interp) cause a new warning to be replaced by UNUSED(INTERP).


  Commit: 6afb068a5c723e27e323c59a7b87007a8109dc43
      https://github.com/parrot/parrot/commit/6afb068a5c723e27e323c59a7b87007a8109dc43
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-18 (Tue, 18 Sep 2012)

  Changed paths:
    M config/auto/warnings.pm

  Log Message:
  -----------
  warnings: Improve clang support

clang requires warnings overrides for -Wno-parentheses-equality
and adds -Wno-unused-result to src/ops/core_ops.c.
(used in 29582199aef9ea9462 [GH #828] Optimize print_n/i and say_n/i)


  Commit: a95f757e247a3099d3c8a2ff5d6c7a1f234b3200
      https://github.com/parrot/parrot/commit/a95f757e247a3099d3c8a2ff5d6c7a1f234b3200
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-18 (Tue, 18 Sep 2012)

  Changed paths:
    M config/gen/makefiles/root.in

  Log Message:
  -----------
  Add ccwarn::src/ops/core_ops.c SUFFIX OVERRIDE for using (void)Parrot_io_write_b

Added with 29582199aef9ea94622b4202aee129521bc


  Commit: ef4b571b684f1c9d6148dc9fa2a31112f1c45060
      https://github.com/parrot/parrot/commit/ef4b571b684f1c9d6148dc9fa2a31112f1c45060
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-18 (Tue, 18 Sep 2012)

  Changed paths:
    M src/ops/core.ops
    M src/ops/core_ops.c
    M src/pmc/key.pmc

  Log Message:
  -----------
  Add more UNUSED() declarations to key.pmc and core.ops


  Commit: 19183d00be33924b2a6e0cad3894ac6e5558ef9c
      https://github.com/parrot/parrot/commit/19183d00be33924b2a6e0cad3894ac6e5558ef9c
  Author: Jonathan "Duke" Leto <jonathan at leto.net>
  Date:   2012-09-19 (Wed, 19 Sep 2012)

  Changed paths:
    M docs/running.pod
    M frontend/parrot2/prt0.winxed

  Log Message:
  -----------
  Remove mentions of -d/-O/-v from --help output and docs/running.pod #838


  Commit: bf60df5ce4a1a4ba3f414d4290bbf84e42fc6c2e
      https://github.com/parrot/parrot/commit/bf60df5ce4a1a4ba3f414d4290bbf84e42fc6c2e
  Author: Jonathan "Duke" Leto <jonathan at leto.net>
  Date:   2012-09-19 (Wed, 19 Sep 2012)

  Changed paths:
    M docs/binaries/parrot.pod
    M examples/pir/sudoku.pir
    M frontend/parrot2/main.c

  Log Message:
  -----------
  Remove more references to options that no longer exist #838


  Commit: fad1f1eb476621ee0ecb1e786a8528a04a7773ad
      https://github.com/parrot/parrot/commit/fad1f1eb476621ee0ecb1e786a8528a04a7773ad
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-23 (Sun, 23 Sep 2012)

  Changed paths:
    M Configure.pl

  Log Message:
  -----------
  Merge branch 'rurban/preload-config-steps-gh833' into rurban/clang++-gh844


  Commit: 59b678a81d739072988a556813048b264144f885
      https://github.com/parrot/parrot/commit/59b678a81d739072988a556813048b264144f885
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-23 (Sun, 23 Sep 2012)

  Changed paths:
    M config/gen/config_h/feature_h.in
    M include/parrot/datatypes.h
    M lib/Parrot/Configure/Step/List.pm

  Log Message:
  -----------
  [GH #844] Add clang++ support, new auto::alignof step

clang++ does not allow struct definitions inside a type specifier,
offsetof() in datatypes.h
Thus probe for clang++ only for all ALIGNOF values in a
new auto::alignof step. This is normally skipped. Add the
definitions to feature.h.


  Commit: 4045afa353a4f1d25e8ef944fa30e438e62f0f41
      https://github.com/parrot/parrot/commit/4045afa353a4f1d25e8ef944fa30e438e62f0f41
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M CREDITS
    M ChangeLog
    M Configure.pl
    M MANIFEST
    M MANIFEST.generated
    M README.pod
    M RESPONSIBLE_PARTIES
    M VERSION
    M compilers/imcc/optimizer.c
    M config/auto/libffi.pm
    M config/auto/warnings.pm
    M config/gen/config_pm.pm
    M config/gen/config_pm/config_lib_pir.in
    M config/gen/makefiles/root.in
    M docs/parrothist.pod
    M docs/project/release_manager_guide.pod
    A examples/benchmarks/stress_strings1.pir
    A examples/benchmarks/stress_stringsu.pir
    M include/parrot/oplib/core_ops.h
    M src/ops/core_ops.c
    M src/platform/generic/cpu_type.c
    M src/pmc/bytebuffer.pmc
    M src/string/api.c
    M t/op/stringu.t
    M t/pmc/bytebuffer.t
    A t/pmc/bytebuffer2.t
    M t/src/checkdepend.t
    M t/steps/auto/libffi-01.t
    M tools/release/parrot_github_release.pl
    M tools/release/release.json

  Log Message:
  -----------
  merge master into rurban/pmc2c-unused-gh836

Fix conflict in config/auto/warnings.pm


  Commit: 1d37b987296de1ff3defbec0e0209162b628ceed
      https://github.com/parrot/parrot/commit/1d37b987296de1ff3defbec0e0209162b628ceed
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M config/auto/warnings.pm

  Log Message:
  -----------
  fixup wrong config/auto/warnings.pm merge


  Commit: 562f9ab997e27a4ec1a1e591208e1d715f0a42fd
      https://github.com/parrot/parrot/commit/562f9ab997e27a4ec1a1e591208e1d715f0a42fd
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M lib/Parrot/Pmc2c/Method.pm

  Log Message:
  -----------
  [GH #836] Allow UNUSED(word); the semicolon


  Commit: f4a63d51242bebb358211e43367232b60bbffbcc
      https://github.com/parrot/parrot/commit/f4a63d51242bebb358211e43367232b60bbffbcc
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M src/pmc/default.pmc

  Log Message:
  -----------
  [GH #836] default thaw: SELF.init uses INTERP


  Commit: 7c350cfdd6f234ee174397e48b39584cab525df4
      https://github.com/parrot/parrot/commit/7c350cfdd6f234ee174397e48b39584cab525df4
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M config/gen/makefiles/root.in

  Log Message:
  -----------
  pmc2c: use the current libs not the installed

pmc2c favored installed Parrot::Pmc2c libs over the current ones, which
made debugging Parrot::Pmc2c methods hard.


  Commit: 847cb9bcc78a2d13d0735f99dfbdbe7112015a56
      https://github.com/parrot/parrot/commit/847cb9bcc78a2d13d0735f99dfbdbe7112015a56
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M ChangeLog
    M lib/Parrot/Pmc2c/Method.pm
    M lib/Parrot/Pmc2c/PMC/Null.pm
    M src/pmc/addrregistry.pmc
    M src/pmc/class.pmc
    M src/pmc/continuation.pmc
    M src/pmc/default.pmc
    M src/pmc/key.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/pointer.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/sub.pmc
    M src/pmc/undef.pmc

  Log Message:
  -----------
  [GH #836] Cleaned wrong UNUSED(arg) macros in all pmc's

Due to an improved pmc2c compiler, which SHIMs all UNUSED args,
a lot of wrong and/or badly placed UNUSED macros have been fixed.


  Commit: 7913e25039432ff4273f5898ef803cfc3eab8ede
      https://github.com/parrot/parrot/commit/7913e25039432ff4273f5898ef803cfc3eab8ede
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-24 (Mon, 24 Sep 2012)

  Changed paths:
    M config/auto/warnings.pm
    M lib/Parrot/Pmc2c/Method.pm

  Log Message:
  -----------
  [codingstd] GH #836 fix hard tabs


  Commit: 0525faa867810706bbeb957befd9e44876257a23
      https://github.com/parrot/parrot/commit/0525faa867810706bbeb957befd9e44876257a23
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M ChangeLog
    M config/gen/makefiles/root.in
    M lib/Parrot/Pmc2c/Method.pm
    M lib/Parrot/Pmc2c/PMC/Null.pm
    M src/ops/core.ops
    M src/ops/core_ops.c
    M src/pmc/addrregistry.pmc
    M src/pmc/class.pmc
    M src/pmc/continuation.pmc
    M src/pmc/default.pmc
    M src/pmc/key.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/pointer.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/sub.pmc
    M src/pmc/undef.pmc

  Log Message:
  -----------
  Merge branch 'rurban/pmc2c-unused-gh836'

Fixed conflict:
	config/auto/warnings.pm
fixes already in master


  Commit: ac0b13554d30aa8946be90f6095bdfbb61c7ea1d
      https://github.com/parrot/parrot/commit/ac0b13554d30aa8946be90f6095bdfbb61c7ea1d
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M lib/Parrot/Pmc2c/Method.pm

  Log Message:
  -----------
  [GH #836] Catch also Scheduler.destroy and empty Undef bodies


  Commit: ce2c408d3627ef0dddfc3b8961ba2cef0070f0d8
      https://github.com/parrot/parrot/commit/ce2c408d3627ef0dddfc3b8961ba2cef0070f0d8
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M lib/Parrot/Pmc2c/Method.pm

  Log Message:
  -----------
  Merge branch 'rurban/pmc2c-unused-gh836'


  Commit: eaa1466dda9172fb84701c7ac2e8db266f053fea
      https://github.com/parrot/parrot/commit/eaa1466dda9172fb84701c7ac2e8db266f053fea
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M ChangeLog
    M Configure.pl
    M MANIFEST
    M compilers/imcc/optimizer.c
    M config/auto/libffi.pm
    M config/auto/warnings.pm
    M config/gen/config_pm.pm
    M config/gen/config_pm/config_lib_pir.in
    M config/gen/makefiles/root.in
    M docs/project/release_manager_guide.pod
    A examples/benchmarks/stress_strings1.pir
    A examples/benchmarks/stress_stringsu.pir
    M lib/Parrot/Pmc2c/Method.pm
    M lib/Parrot/Pmc2c/PMC/Null.pm
    M runtime/parrot/library/MIME/Base64.pir
    M src/dynpmc/gziphandle.pmc
    M src/ops/core.ops
    M src/ops/core_ops.c
    M src/platform/generic/cpu_type.c
    M src/pmc/addrregistry.pmc
    M src/pmc/bytebuffer.pmc
    M src/pmc/class.pmc
    M src/pmc/continuation.pmc
    M src/pmc/default.pmc
    M src/pmc/key.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/pointer.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/sub.pmc
    M src/pmc/undef.pmc
    M src/string/api.c
    M t/dynpmc/select.t
    M t/library/mime_base64.t
    M t/op/stringu.t
    M t/pmc/bytebuffer.t
    A t/pmc/bytebuffer2.t
    M t/pmc/filehandle.t
    M t/pmc/nci.t
    M t/pmc/parrotio.t
    M t/pmc/stringhandle.t
    M t/steps/auto/libffi-01.t

  Log Message:
  -----------
  Merge remote-tracking branch 'origin/master' into gh838_cmdline_cleanup


  Commit: 4879083ea39e288d405c81007b249a03bdb72bba
      https://github.com/parrot/parrot/commit/4879083ea39e288d405c81007b249a03bdb72bba
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M ChangeLog
    M config/gen/makefiles/root.in
    M frontend/parrot2/prt0.pir

  Log Message:
  -----------
  [GH #838] bootstrap-prt0, ChangeLog

Remind to call bootstrap-prt0 in Makefile when prt0.winxed is changed.
Called bootstrap-prt0
Added ChangeLog line, and whitespace fixes


  Commit: a5bb6bf86d556781ad1b26356f2a469b6acf1247
      https://github.com/parrot/parrot/commit/a5bb6bf86d556781ad1b26356f2a469b6acf1247
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M config/auto/warnings.pm
    M lib/Parrot/Pmc2c/Method.pm

  Log Message:
  -----------
  [codingstd] hard tabs


  Commit: 14fa643cca799ee9d2add56e77ee6026e87b6cbc
      https://github.com/parrot/parrot/commit/14fa643cca799ee9d2add56e77ee6026e87b6cbc
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M docs/binaries/parrot.pod

  Log Message:
  -----------
  [codingstd] podcheck parrot.pod

Fixed various non-conformant pod: empty =item, =over for bodies


  Commit: 5b1e564bd37e2541ef3c8572615ababf98e94cf0
      https://github.com/parrot/parrot/commit/5b1e564bd37e2541ef3c8572615ababf98e94cf0
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-25 (Tue, 25 Sep 2012)

  Changed paths:
    M ChangeLog
    M Configure.pl
    M config/auto/warnings.pm
    M config/gen/makefiles/root.in
    M docs/binaries/parrot.pod
    M docs/running.pod
    M examples/pir/sudoku.pir
    M frontend/parrot2/main.c
    M frontend/parrot2/prt0.pir
    M frontend/parrot2/prt0.winxed
    M lib/Parrot/Pmc2c/Method.pm
    M lib/Parrot/Pmc2c/PMC/Null.pm
    M runtime/parrot/library/MIME/Base64.pir
    M src/dynpmc/gziphandle.pmc
    M src/ops/core.ops
    M src/ops/core_ops.c
    M src/platform/generic/cpu_type.c
    M src/pmc/addrregistry.pmc
    M src/pmc/bytebuffer.pmc
    M src/pmc/class.pmc
    M src/pmc/continuation.pmc
    M src/pmc/default.pmc
    M src/pmc/key.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/pointer.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/sub.pmc
    M src/pmc/undef.pmc
    M t/dynpmc/select.t
    M t/library/mime_base64.t
    M t/pmc/filehandle.t
    M t/pmc/nci.t
    M t/pmc/parrotio.t
    M t/pmc/stringhandle.t

  Log Message:
  -----------
  Merge branch 'master' into rurban/clang++-gh844


  Commit: 1a2f59bf151c8d8f17fe09691ef71fdf515f78c4
      https://github.com/parrot/parrot/commit/1a2f59bf151c8d8f17fe09691ef71fdf515f78c4
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-26 (Wed, 26 Sep 2012)

  Changed paths:
    M config/auto/attributes.pm
    M config/auto/gcc.pm
    M config/auto/warnings.pm

  Log Message:
  -----------
  [GH #844] fix clang++ attributes, set -x c++ in cc

clang++ prints always a warning on c sources.
Move -x c++ from warnings upfront to cc, probed in auto::gcc
to be able to correctly probe for warnings and attributes.
This fixed almost all clang++ warnings, only dynoplibs
-Wno-parentheses-equality is missing for those.


  Commit: 665f7d5096b157e68a73fda10b5047c429e01f41
      https://github.com/parrot/parrot/commit/665f7d5096b157e68a73fda10b5047c429e01f41
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-26 (Wed, 26 Sep 2012)

  Changed paths:
    M MANIFEST
    A config/auto/alignof.pm
    A config/auto/alignof/test_c.in
    M lib/Parrot/Configure/Step/List.pm

  Log Message:
  -----------
  [GH #844] add missing auto::alignof files

Add files to MANIFEST
Use auto::alignof as last auto step


  Commit: 3fb8675b097aa64c373f670ebfd8d7b0dc8d8c68
      https://github.com/parrot/parrot/commit/3fb8675b097aa64c373f670ebfd8d7b0dc8d8c68
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-26 (Wed, 26 Sep 2012)

  Changed paths:
    M config/auto/alignof.pm
    M config/auto/alignof/test_c.in
    M config/gen/config_h/feature_h.in
    M include/parrot/datatypes.h

  Log Message:
  -----------
  [GH #844] Probe for valid offsetof in structs (clang++)

Before we hardcoded clang++ as only compiler which does not compile
struct definitions inside a type specifier, offsetof() in datatypes.h.
Probe now for this behavior, and set HAS_COMPILER_OFFSETOF_ALIGNOF.
1 if allowed at compile-time, and undef if not and various
PARROT_ALIGN_<type> definitions are precomputed.

Also fix parrot/datatypes.h codingstd.


  Commit: df26e9a1612cb4ec5d1242d9520b13b8034cac24
      https://github.com/parrot/parrot/commit/df26e9a1612cb4ec5d1242d9520b13b8034cac24
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-26 (Wed, 26 Sep 2012)

  Changed paths:
    M config/auto/warnings.pm

  Log Message:
  -----------
  [GH #844] use $conf->data->{cc} for clang++ as it has -x c++ added

This enables proper clang++ warnings.


  Commit: e6c9077e612449502768ff5111cf9491696f4155
      https://github.com/parrot/parrot/commit/e6c9077e612449502768ff5111cf9491696f4155
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-26 (Wed, 26 Sep 2012)

  Changed paths:
    M config/gen/makefiles.pm
    M src/dynoplibs/Defines.in
    M src/dynoplibs/Rules.in

  Log Message:
  -----------
  [GH #844] Improve makefile rules

Add clang suffix overrides or dynoplibs (-Wno-parentheses-equality)
Improve the DYNOPLIBS defines.


  Commit: 9b4f7abc220552929f70d2270a6c6094182e698f
      https://github.com/parrot/parrot/commit/9b4f7abc220552929f70d2270a6c6094182e698f
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-26 (Wed, 26 Sep 2012)

  Changed paths:
    M ChangeLog

  Log Message:
  -----------
  [GH #844] Add ChangeLog entry

And improve a couple of others.


  Commit: d220be78f933206d29f5d687a356681eeb0fbbb1
      https://github.com/parrot/parrot/commit/d220be78f933206d29f5d687a356681eeb0fbbb1
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-27 (Thu, 27 Sep 2012)

  Changed paths:
    M ChangeLog
    M src/platform/generic/cpu_type.c

  Log Message:
  -----------
  [GH #846] Harmonize generic/cpu_type.c: "unknown"

Harmonize with win32 version:
Return "unknown" not ""
Add PARROT_CANNOT_RETURN_NULL
Fix description


  Commit: 3b76818a6a4852726519acb66dad45b5d2c066fe
      https://github.com/parrot/parrot/commit/3b76818a6a4852726519acb66dad45b5d2c066fe
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-27 (Thu, 27 Sep 2012)

  Changed paths:
    M ChangeLog
    M MANIFEST
    A config/auto/alignof.pm
    A config/auto/alignof/test_c.in
    M config/auto/attributes.pm
    M config/auto/gcc.pm
    M config/auto/warnings.pm
    M config/gen/config_h/feature_h.in
    M config/gen/makefiles.pm
    M config/gen/makefiles/root.in
    M docs/binaries/parrot.pod
    M docs/running.pod
    M examples/pir/sudoku.pir
    M frontend/parrot2/main.c
    M frontend/parrot2/prt0.pir
    M frontend/parrot2/prt0.winxed
    M include/parrot/datatypes.h
    M lib/Parrot/Configure/Step/List.pm
    M lib/Parrot/Pmc2c/Method.pm
    M lib/Parrot/Pmc2c/PMC/Null.pm
    M src/dynoplibs/Defines.in
    M src/dynoplibs/Rules.in
    M src/ops/core.ops
    M src/ops/core_ops.c
    M src/platform/generic/cpu_type.c
    M src/pmc/addrregistry.pmc
    M src/pmc/class.pmc
    M src/pmc/continuation.pmc
    M src/pmc/default.pmc
    M src/pmc/key.pmc
    M src/pmc/orderedhashiterator.pmc
    M src/pmc/pointer.pmc
    M src/pmc/scheduler.pmc
    M src/pmc/sub.pmc
    M src/pmc/undef.pmc

  Log Message:
  -----------
  Merge branch 'master' into threads

Fixed conflicts:
	src/pmc/scheduler.pmc


  Commit: 4a11ee1c90504b85ce213ca84d8da1434cd6aeb5
      https://github.com/parrot/parrot/commit/4a11ee1c90504b85ce213ca84d8da1434cd6aeb5
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2012-09-27 (Thu, 27 Sep 2012)

  Changed paths:
    M src/pmc/alarm.pmc

  Log Message:
  -----------
  alarm.pmc: Remove wrong UNUSED(INTERP) in 3 methods (SELF needs it)


Compare: https://github.com/parrot/parrot/compare/c415f1733a30...4a11ee1c9050


More information about the parrot-commits mailing list