8000 AIX build breaks with "field 'dtoa' has incomplete type" · Issue #121045 · python/cpython · GitHub
[go: up one dir, main page]

Skip to content

AIX build breaks with "field 'dtoa' has incomplete type" #121045

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
ayappanec opened this issue Jun 26, 2024 · 3 comments
Closed

AIX build breaks with "field 'dtoa' has incomplete type" #121045

ayappanec opened this issue Jun 26, 2024 · 3 comments
Labels
build The build process and cross-build type-bug An unexpected behavior, bug, or error

Comments

@ayappanec
Copy link
Contributor
ayappanec commented Jun 26, 2024

Bug report

Bug description:

AIX build starts failing with the below error recently. Looks like some recent commits introduced some changes which caused the issue I guess.

gcc -pthread -c -fno-strict-overflow -Wimplicit-fallthrough -fstack-protector-strong -Wtrampolines -Wsign-compare -DNDEBUG -g -O3 -Wall    -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden  -I./Include/internal -I./Include/internal/mimalloc  -I. -I./Include    -DPy_BUILD_CORE -o Parser/pegen.o Parser/pegen.c
In file included from ./Include/internal/pycore_runtime.h:17,
                 from ./Include/internal/pycore_pystate.h:12,
                 from Parser/pegen.c:3:
./Include/internal/pycore_interp.h:246:24: error: field 'dtoa' has incomplete type
  246 |     struct _dtoa_state dtoa;
      |                        ^~~~
gmake: *** [Makefile:3035: Parser/pegen.o] Error 1

CPython versions tested on:

CPython main branch

Operating systems tested on:

Other

Linked PRs

@ayappanec ayappanec added the type-bug An unexpected behavior, bug, or error label Jun 26, 2024
@AlexWaygood AlexWaygood added the build The build process and cross-build label Jun 26, 2024
@ronaldoussoren
Copy link
Contributor
10000

This is a duplicate of #119447

@ronaldoussoren ronaldoussoren closed this as not planned Won't fix, can't repro, duplicate, stale Jun 29, 2024
@ayappanec
Copy link
Contributor Author

The actual problem here is that check for "x87-style double rounding" is failed ( which sets X87_DOUBLE_ROUNDING and that in turn sets _PY_SHORT_FLOAT_REPR to 0).

Check for "x87-style double rounding" is failed because gcc compiler don't support "-fstack-protector-strong" in AIX.
configure:23929: gcc -pthread -maix64 -fno-strict-overflow -fstack-protector-strong -Wtrampolines -Wsign-compare -o conftest conftest.c -lintl -ldl >&5
collect2: fatal error: library libssp_nonshared not found
compilation terminated.
configure:23929: $? = 1

Even though there is configure check for "-fstack-protector-strong" , it actually requires a link/run test rather than a compile test.
configure:9610: checking whether C compiler accepts -fstack-protector-strong
configure:9630: gcc -pthread -maix64 -c -Werror -fstack-protector-strong conftest.c >&5
configure:9630: $? = 0
configure:9639: result: yes

The simple fix here would be to change "ac_fn_c_try_compile" to "ac_fn_c_try_run" for "-fstack-protector-strong" test. I will send a PR soon for this.

Issue #119447 is with xlc compiler. There also I see the check for "x87-style double rounding" failing which could be for a different reason because "-fstack-protector-strong" is not introduced that time.

@ayappanec
Copy link
Contributor Author

I see #120975 introduced "-fstack-protector-strong" through AX_CHECK_COMPILE_FLAG in configure.ac. Any option to make it as run/link (-o) test rather than compile (-c) test through Autoconf macro ?. I am not sure whether we can use AX_CHECK_LINK_FLAG.

ayappanec added a commit to ayappanec/cpython that referenced this issue Jul 2, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Jul 22, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Jul 23, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Jul 26, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Aug 1, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Aug 23, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Aug 30, 2024
ayappanec added a commit to ayappanec/cpython that referenced this issue Sep 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build The build process and cross-build type-bug An unexpected behavior, bug, or error
Projects
None yet
Development

No branches or pull requests

3 participants
0