This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Compiling GCC With a C++ Compiler (g++)



On 12/10/2004, at 12:38 AM, Ranjit Mathew wrote:


Ranjit Mathew wrote:
The definition of tree_string is:

  struct tree_string GTY(())
  {
    struct tree_common common;
    int length;
    const char str[1];
  };

If the "const" is removed from above, the compilation
proceeds.

The "const char *pointer" -> "const char str[1]" change was done by geoffk as a part of fixing pch/13361.

We now want to store the string in the node itself,
rather than merely pointing to it.

However, I still think that the "const" is
misleading/incorrect. In build_string() in tree.c,
we cast it to (char *) anyways before memcpy-ing the
desired string into it.

Would it be wrong to remove it? (And thus re-enable
compiling this bit of GCC with a C++ compiler like
g++.)

The 'const' is there to indicate that the string should not be changed once the STRING_CST is created; STRING_CSTs may be shared.


Why is C++ complaining about this? It looks like a reasonable construct.

Attachment: smime.p7s
Description: S/MIME cryptographic signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]