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

Build failure in C++ mode on Win32 with gcc 3.x from www.mingw.org #14535

Open
p5pRT opened this issue Feb 23, 2015 · 4 comments
Open

Build failure in C++ mode on Win32 with gcc 3.x from www.mingw.org #14535

p5pRT opened this issue Feb 23, 2015 · 4 comments

Comments

@p5pRT
Copy link

p5pRT commented Feb 23, 2015

Migrated from rt.perl.org#123906 (status was 'open')

Searchable as RT123906$

@p5pRT
Copy link
Author

p5pRT commented Feb 23, 2015

From @steve-m-hay

Trying to build perl in C++ mode on Windows with gcc 3.2.3, 3.3.3, 3.4.2 and 3.4.5 from www.mingw.org all fail. The miniperl build works, followed by pure-Perl modules, but the main perl.exe fails when compiling perl.c​:

gcc -c -I..\ -xc++ -I.\include -I. -I.. -I..\lib\CORE -DWIN32 -DPERLDLL -DPERL_CORE -s -O2 -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-bitfields -o..\perl.o ..\perl.c
perl.c​: In function `void Perl_call_list(PerlInterpreter*, I32, AV*)'​:
perl.c​:4881​: error​: `volatile' qualifiers cannot be applied to `void ()(IPerlProc*, int)'
perl.c​:4881​: error​: `volatile' qualifiers cannot be applied to `void ()(IPerlProc*, int)'
perl.c​: In function `void S_my_exit_jump(PerlInterpreter*)'​:
perl.c​:5021​: error​: `volatile' qualifiers cannot be applied to `void ()(IPerlProc*, int)'
perl.c​:5021​: error​: `volatile' qualifiers cannot be applied to `void ()(IPerlProc*, int)'
dmake​: Error code 129, while making '..\perl.o'

Later versions of gcc (4.x) do not have this problem, which includes all gccs available from MinGW-w64 (I think they never made any 3.x versions).

I confess I do not understand what the errors are referring to. There are very few mentions of "volatile" in perl.c, even after pre-processing. I've attached the pre-processed file here for reference in case anyone can shed any light.

Is this just a compiler problem that we can do nothing about? If so then I will simply document the problem somewhere and not lose any sleep over it. I don't know how many people are still using gcc 3.x, but I doubt that many of them will be trying out the recently added C++ build option anyway.

@p5pRT
Copy link
Author

p5pRT commented Feb 23, 2015

From @steve-m-hay

perl.i

@p5pRT
Copy link
Author

p5pRT commented Feb 17, 2017

From @jkeenan

On Mon, 23 Feb 2015 08​:45​:58 GMT, shay wrote​:

Trying to build perl in C++ mode on Windows with gcc 3.2.3, 3.3.3,
3.4.2 and 3.4.5 from www.mingw.org all fail. The miniperl build works,
followed by pure-Perl modules, but the main perl.exe fails when
compiling perl.c​:

gcc -c -I..\ -xc++ -I.\include -I. -I.. -I..\lib\CORE -DWIN32
-DPERLDLL -DPERL_CORE -s -O2 -DPERL_TEXTMODE_SCRIPTS
-DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-
bitfields -o..\perl.o ..\perl.c
perl.c​: In function `void Perl_call_list(PerlInterpreter*, I32, AV*)'​:
perl.c​:4881​: error​: `volatile' qualifiers cannot be applied to `void
()(IPerlProc*, int)'
perl.c​:4881​: error​: `volatile' qualifiers cannot be applied to `void
()(IPerlProc*, int)'
perl.c​: In function `void S_my_exit_jump(PerlInterpreter*)'​:
perl.c​:5021​: error​: `volatile' qualifiers cannot be applied to `void
()(IPerlProc*, int)'
perl.c​:5021​: error​: `volatile' qualifiers cannot be applied to `void
()(IPerlProc*, int)'
dmake​: Error code 129, while making '..\perl.o'

Later versions of gcc (4.x) do not have this problem, which includes
all gccs available from MinGW-w64 (I think they never made any 3.x
versions).

I confess I do not understand what the errors are referring to. There
are very few mentions of "volatile" in perl.c, even after pre-
processing. I've attached the pre-processed file here for reference in
case anyone can shed any light.

Is this just a compiler problem that we can do nothing about? If so
then I will simply document the problem somewhere and not lose any
sleep over it. I don't know how many people are still using gcc 3.x,
but I doubt that many of them will be trying out the recently added
C++ build option anyway.

Steve, since no one responded to this RT -- probably because no one is going to use that old a version of gcc in that particular mode of operation -- I believe you should indeed just document it somewhere. We could then close this ticket.

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

p5pRT commented Feb 17, 2017

The RT System itself - Status changed from 'new' to 'open'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants