Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 898814 - dev-lang/php-8.2.3 has implicit function declarations in configure logs (MUSL-CLANG-SYSTEM)
Summary: dev-lang/php-8.2.3 has implicit function declarations in configure logs (MUSL...
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: PHP Bugs
URL: https://github.com/php/php-src/issues...
Whiteboard:
Keywords:
Depends on:
Blocks: c99-porting
  Show dependency tree
 
Reported: 2023-03-02 09:36 UTC by Agostino Sarubbo
Modified: 2023-03-17 15:51 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log.xz (build.log.xz,34.26 KB, application/x-xz)
2023-03-02 09:36 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2023-03-02 09:36:21 UTC
https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: dev-lang/php-8.2.3 has implicit function declarations in configure logs (MUSL-CLANG-SYSTEM).
Discovered on: amd64 (internal ref: tinderbox_musl)

NOTE:
(MUSL-CLANG-SYSTEM) in the summary means that bug was found on a machine that runs MUSL libc + clang16 but this bug MAY or MAY NOT BE related to musl/clang16.
See also: https://bugs.gentoo.org/898488#c4.
Comment 1 Agostino Sarubbo gentoo-dev 2023-03-02 09:36:23 UTC
Created attachment 855688 [details]
build.log.xz

build log and emerge --info (compressed because it exceeds attachment limit, use 'xzless' to read it)
Comment 2 Michael Orlitzky gentoo-dev 2023-03-02 13:09:40 UTC
 * QA Notice: Found the following implicit function declarations in configure logs:
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/fpm/config.log:2529 - printf
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/fpm/config.log:2805 - iconv_ccs_init
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/fpm/config.log:3083 - cstoccsid
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/fpm/config.log:13024 - _controlfp
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/fpm/config.log:13390 - _controlfp_s
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/cli/config.log:6528 - __crc32d
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/cli/config.log:8010 - printf
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/cli/config.log:8270 - iconv_ccs_init
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/cli/config.log:8532 - cstoccsid
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/cli/config.log:20574 - _controlfp
 *   /var/tmp/portage/dev-lang/php-8.2.3/work/sapis-build/cli/config.log:20925 - _controlfp_s
 * Check that no features were accidentally disabled.
 * See https://wiki.gentoo.org/wiki/Modern_C_porting.
Comment 3 Michael Orlitzky gentoo-dev 2023-03-02 13:24:22 UTC
I'll take a second opinion, but I looked through these and most look OK, e.g.

    if test -z "$iconv_impl_name"; then
      AC_MSG_CHECKING([if iconv is Konstantin Chuguev's])
      AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <iconv.h>]], [[iconv_ccs_init(NULL, NULL);]])],[                                                              
        AC_MSG_RESULT(yes)
        iconv_impl_name="bsd"
      ],[
        AC_MSG_RESULT(no)
      ])
    fi

That fails to compile (instead of failing to link) when iconv_ccs_init() is not defined in iconv.h, but it's still the correct result.

On the other hand, I'll bet this,

  AC_RUN_IFELSE([AC_LANG_SOURCE([[
  #include <iconv.h>                                                              
  int main() {
    printf("%d", _libiconv_version);
    return 0;
  }

is missing stdio.h (for printf).

Moreover I spotted a few

  int main() { ... }

in the m4 files that will need to be updated with the correct signature.
Comment 4 Michael Orlitzky gentoo-dev 2023-03-17 15:51:45 UTC
This was merged upstream, but the patch doesn't apply cleanly to v8.2.4, and I don't the issue is serious enough to justify backporting it.