The only dangerous thing about mixing C and C++ I can think of is PETSc's reliance<div>on the specific struct layout when downcasting (e.g., to PetscObject).  What does the</div><div>C++ standard say about this?</div><div>

<br></div><div>Dmitry.</div><div><br><div class="gmail_quote">On Mon, Apr 4, 2011 at 8:48 PM, Satish Balay <span dir="ltr"><<a href="mailto:balay@mcs.anl.gov">balay@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

There is clang and clang++ - but still they insist on throwing this warning.<br>
<br>
When I invoke clang++ - I want c++. So I'm not sure whats so ambiguous<br>
that they should throw this warning.<br>
<br>
And what does this depricate mean? That  'clang++ foo.c' will create C code?<br>
<br>
Then why have both clang and clang++?<br>
<font color="#888888"><br>
satish<br>
</font><div><div></div><div class="h5"><br>
On Mon, 4 Apr 2011, Barry Smith wrote:<br>
<br>
><br>
>    configure.log ????<br>
><br>
>    What about passing the compiler option -x C++? Or maybe you are already doing that but I would't know because you didn't send configure.log<br>
><br>
>     It's bad enough when our ignorant users don't send necessary configure.log files but you?<br>
><br>
>    Barry<br>
><br>
> On Apr 4, 2011, at 8:33 PM, Sean Farley wrote:<br>
><br>
> > When specifying --with-clanguage=C++ (as required by sieve) all C code (any .c file) is still compiled with the C++ compiler. This behavior is deprecated as clang will warn you:<br>
> ><br>
> > clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated<br>
> ><br>
> > C is not a subset of C++ and treats structs very differently than C++. This should really be handled correctly but I can't read the conf/rules file no more than I can read Greek.<br>
> ><br>
> > Sean<br>
> > <make.log><br>
><br>
><br>
<br>
</div></div></blockquote></div><br></div>