deprecated conversion from string constant to 'char *'

Ian Lance Taylor iant@google.com
Fri Jul 7 00:27:00 GMT 2006


"Timothy C Prince" <tprince@myrealbox.com> writes:

> g++ 4.2 rejects a quoted string constant, where the function prototype has char *.  It says warning, but the warning is fatal, even without -Werror.  -fpermissive doesn't let it pass.
> 
> info g++ lists an option -fconst-strings, but that option has been removed.
> 
> What is expected as a replacement for current source code  with 1000's of string constants, which up to now worked with char * prototype?

This is what I get:

> cat foo.cc
extern void foo(char*);
void bar() { foo("Hello"); }
> g++ -c foo.cc
foo.cc: In function ‘void bar()’:
foo.cc:2: warning: deprecated conversion from string constant to ‘char*’'
> echo $?
0

Looks like a warning to me, not an error.  Please give a small source
code example and the command line you are using.

Ian



More information about the Gcc-help mailing list