[Perl/perl5] c702af: embed.fnc: Fix 'M' flag in 'expected_size' entry

[email protected] (Karl Williamson via perl5-changes)
Newsgroups perl.perl5.changes
Message-ID <Perl/perl5/push/refs/heads/blead/[email protected]>
  Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: c702af942ad3a4e6e5d8f02f8637dc01fd636ed3
      https://github.com/Perl/perl5/commit/c702af942ad3a4e6e5d8f02f8637dc01fd636ed3
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M embed.fnc
    M embed.h
    M proto.h

  Log Message:
  -----------
  embed.fnc: Fix 'M' flag in 'expected_size' entry

It was 'M', which is wrong; 'm' is what is meant.  'M' is for when the
implementation is via a macro of a different name.


  Commit: d129aa1c6134eff373d1517d5a29105bc68e8e1b
      https://github.com/Perl/perl5/commit/d129aa1c6134eff373d1517d5a29105bc68e8e1b
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M av.c
    M caretx.c
    M class.c
    M doio.c
    M generate_uudmap.c
    M gv.c
    M hv.c
    M hv_func.h
    M inline.h
    M locale.c
    M mg.c
    M mro_core.c
    M numeric.c
    M op.c
    M pad.c
    M peep.c
    M perl.h
    M perl_siphash.h
    M perlio.c
    M perly.h
    M pp_hot.c
    M pp_pack.c
    M pp_sys.c
    M regcomp.c
    M regexec.c
    M scope.c
    M sv.c
    M sv_inline.h
    M toke.c
    M util.c

  Log Message:
  -----------
  Normalize C function headings

The normal syntax for the beginning of a function in our C code is to
have the return type on the first line, the function name and parameters
on the second line, and the third line containing a single '{', like so:

 static void
 S_foo(pTHX_ int a)
 {

This commit brings the outliers into compliance with this, except for
some machine generated files.

This makes it easier to grep these.


  Commit: b5004d8d11d65e80a8ce2ebdf727d1243df9d9c5
      https://github.com/Perl/perl5/commit/b5004d8d11d65e80a8ce2ebdf727d1243df9d9c5
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M builtin.c
    M caretx.c
    M class.c
    M deb.c
    M doio.c
    M dump.c
    M gv.c
    M hv.c
    M inline.h
    M invlist_inline.h
    M locale.c
    M malloc.c
    M mathoms.c
    M mg.c
    M mro_core.c
    M numeric.c
    M op.c
    M pad.c
    M peep.c
    M perl.c
    M perlio.c
    M perlstatic.h
    M perly.c
    M pp.c
    M pp_ctl.c
    M pp_hot.c
    M pp_sys.c
    M reentr.c
    M regcomp.c
    M regcomp_debug.c
    M regcomp_invlist.c
    M regen/reentr.pl
    M regexec.c
    M reginline.h
    M run.c
    M scope.c
    M sv.c
    M sv_inline.h
    M taint.c
    M toke.c
    M universal.c
    M utf8.c
    M util.c
    M vms/vms.c
    M win32/win32.c

  Log Message:
  -----------
  Add missing PERL_ARGS_ASSERTs

I grepped through the source to add the ones that are generated but
don't appear.

The intent has been that a Porting test warning gets generated for
missing ones that actually have some effect, but no warning for empty
ones.  However, there is a bug in that test that failed to notice
more than a few non-empty ones.

This commit adds those; the next few commits will fix the test, so this
doesn't happen again.

While we're at it, this commit also adds calls to the empty ones.  They
could become non-empty at any time via changes to the ASSERT macro
generation scheme.


  Commit: 27944c6710690f9989876f99aced0ed0f38bf09a
      https://github.com/Perl/perl5/commit/27944c6710690f9989876f99aced0ed0f38bf09a
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M t/porting/args_assert.t

  Log Message:
  -----------
  args_assert.t: Use /xa to make patterns more readable


  Commit: d02b3b318b163e9b1d1f77206ffd482a6dc7863f
      https://github.com/Perl/perl5/commit/d02b3b318b163e9b1d1f77206ffd482a6dc7863f
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M t/porting/args_assert.t

  Log Message:
  -----------
  args_assert.t: Combine two patterns; add a case

These two patterns were meant to differ only in that one applied to .c
files, and one to inline headers.  But the latter did not contain the
guard that compensated for this test file being run inside t/ vs not.

And it turns out perlstatic.h also contains a function definition.


  Commit: 91e0584a7cf97a1ba3e02cd0293b7a34904f5ee2
      https://github.com/Perl/perl5/commit/91e0584a7cf97a1ba3e02cd0293b7a34904f5ee2
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M t/porting/args_assert.t

  Log Message:
  -----------
  args_assert.t: Fix two bugs

The first bug was that it didn't realize there could be spaces in the
components of '#define'.  Hence this missed finding some ARGS_ASSERT
definitions

The second bug was that it did not allow for comments on an ARGS_ASSERT
usage line, so it missed finding some uses of these.


  Commit: a772498751f07a8d7b0f0a6f6d8479f1dc036a89
      https://github.com/Perl/perl5/commit/a772498751f07a8d7b0f0a6f6d8479f1dc036a89
  Author: Karl Williamson <[email protected]>
  Date:   2026-03-14 (Sat, 14 Mar 2026)

  Changed paths:
    M embed.fnc
    M t/porting/args_assert.t

  Log Message:
  -----------
  args_assert.t: Require even empty ARGS_ASSERT

A recent commit has added all missing ARGS_ASSERT macros, even when
currently empty.  It's best to always have them.  Change so any future
functions will need to include one.


Compare: https://github.com/Perl/perl5/compare/be6f8cc09e90...a772498751f0

To unsubscribe from these emails, change your notification settings at https://github.com/Perl/perl5/settings/notifications
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.