Skip to content
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

Compiler error when trying to compile ceval.c on OpenSUSE 11.3 #60733

Closed
malemburg opened this issue Nov 22, 2012 · 6 comments
Closed

Compiler error when trying to compile ceval.c on OpenSUSE 11.3 #60733

malemburg opened this issue Nov 22, 2012 · 6 comments
Labels
build The build process and cross-build interpreter-core (Objects, Python, Grammar, and Parser dirs)

Comments

@malemburg
Copy link
Member

BPO 16529
Nosy @malemburg, @jcea, @vstinner

Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

Show more details

GitHub fields:

assignee = None
closed_at = <Date 2020-02-12.01:20:43.979>
created_at = <Date 2012-11-22.08:49:44.980>
labels = ['interpreter-core', 'build']
title = 'Compiler error when trying to compile ceval.c on OpenSUSE 11.3'
updated_at = <Date 2020-02-12.01:20:43.978>
user = 'https://github.com/malemburg'

bugs.python.org fields:

activity = <Date 2020-02-12.01:20:43.978>
actor = 'vstinner'
assignee = 'none'
closed = True
closed_date = <Date 2020-02-12.01:20:43.979>
closer = 'vstinner'
components = ['Build', 'Interpreter Core']
creation = <Date 2012-11-22.08:49:44.980>
creator = 'lemburg'
dependencies = []
files = []
hgrepos = []
issue_num = 16529
keywords = []
message_count = 6.0
messages = ['176101', '176180', '176181', '176182', '220509', '361852']
nosy_count = 3.0
nosy_names = ['lemburg', 'jcea', 'vstinner']
pr_nums = []
priority = 'normal'
resolution = 'third party'
stage = 'resolved'
status = 'closed'
superseder = None
type = None
url = 'https://bugs.python.org/issue16529'
versions = ['Python 3.4']

@malemburg
Copy link
Member Author

When trying to compile the hg checkout (2012-11-22), I'm getting a compiler error from GCC when trying to compile ceval.c on OpenSUSE 11.3 x64:

gcc -pthread -c -Wno-unused-result -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -I. -IInclude -I./Include -DPy_BUILD_CORE -o Python/ceval.o Python/ceval.c
Python/ceval.c: In function PyEval_EvalFrameEx:
Python/ceval.c:3168:1: internal compiler error: in save_call_clobbered_regs, at caller-save.c:911
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugs.opensuse.org/\> for instructions.
make: *** [Python/ceval.o] Error 1

Here's the gcc version info:

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/4.5/lto-wrapper
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.5 --enable-ssp --disable-libssp --disable-plugin --with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --disable-libgcj --disable-libmudflap --with-slibdir=/lib64 --with-system-zlib --enable-__cxa_atexit --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --program-suffix=-4.5 --enable-linux-futex --without-system-libunwind --enable-gold --with-plugin-ld=/usr/bin/gold --with-arch-32=i586 --with-tune=generic --build=x86_64-suse-linux
Thread model: posix
gcc version 4.5.0 20100604 [gcc-4_5-branch revision 160292] (SUSE Linux)

Interestingly, this error does not happen when compiling the 3.3.0 release version.

It looks similar to these two bugs that are related to some optimization bug in GCC:

I guess you could say that the compiler is broken, but I still think that Python's configure script should detect this and then disable --with-computed-gotos.

@malemburg malemburg added build The build process and cross-build interpreter-core (Objects, Python, Grammar, and Parser dirs) labels Nov 22, 2012
@jcea
Copy link
Member

jcea commented Nov 23, 2012

Could you possibly locate the problematic changeset? Could be doable by bisection.

@malemburg
Copy link
Member Author

On 23.11.2012 17:02, Jesús Cea Avión wrote:

Could you possibly locate the problematic changeset? Could be doable by bisection.

I'll try to find the changeset. There were only 4 checkins
related to ceval.c since the 3.3.0 release, so one of those
will have to have triggered the problem.

@malemburg
Copy link
Member Author

On 23.11.2012 17:24, M.-A. Lemburg wrote:

On 23.11.2012 17:02, Jesús Cea Avión wrote:
>
> Could you possibly locate the problematic changeset? Could be doable by bisection.

I'll try to find the changeset. There were only 4 checkins
related to ceval.c since the 3.3.0 release, so one of those
will have to have triggered the problem.

This changeset triggered the problem:

changeset: 79693:ac30a1b1cf17
user: Benjamin Peterson <benjamin@python.org>
date: Fri Oct 12 11:34:51 2012 -0400
summary: ceval cleanup

It's fairly large (http://hg.python.org/cpython/rev/ac30a1b1cf17),
so I can't easily tell which part might be worth looking at more
closely.

I do notice that the logic for error handling was changed from
doing a "break" to doing a "goto error".

@malemburg
Copy link
Member Author

FWIW: This still happens with the Python 3.4.1 release version.

Here's a similar error report for Fedora:
https://bugzilla.redhat.com/show_bug.cgi?id=622060

They patched the compiler, so I guess I'll have to find a more recent gcc for the build box.

@vstinner
Copy link
Member

That's a GCC bug which has likely been fixed since 2014.

@ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
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 interpreter-core (Objects, Python, Grammar, and Parser dirs)
Projects
None yet
Development

No branches or pull requests

3 participants