[cfe-commits] r41681 - in /cfe/trunk: Sema/Sema.h Sema/SemaDecl.cpp Sema/SemaExpr.cpp include/clang/Basic/DiagnosticKinds.def test/Sema/array-init.c

Bill Wendling isanbard at gmail.com
Tue Sep 4 10:39:28 PDT 2007


I'll look into this this week. In the meantime, Chris disabled the test.

-bw

On 9/4/07, Steve Naroff <snaroff at apple.com> wrote:
>
>
> On Sep 4, 2007, at 8:51 AM, Fariborz Jahanian wrote:
>
> After a checkout of latest source, following test failed. Is this a
> known problem.
>
>
> Yes. I noted this failure after my 9/1 commit (see below).
>
> I asked Bill to look into it (since he added the C++ reference support...).
>
> snaroff
> Begin forwarded message:
> From: Steve Naroff <snaroff at apple.com>
> Date: September 1, 2007 7:04:31 PM PDT
> To: cfe-commits at cs.uiuc.edu
> Subject: [cfe-commits] r41671 - in /cfe/trunk: Sema/Sema.h Sema/SemaDecl.cpp
> Sema/SemaExpr.cpp test/Sema/array-init.c
>
> Author: snaroff
> Date: Sat Sep  1 21:04:30 2007
> New Revision: 41671
>
> URL: http://llvm.org/viewvc/llvm-project?rev=41671&view=rev
> Log:
>
> Start implementing semantic analysis for C initializers.
>
> Step 1: Start instantiating InitListExpr's.
> Step 2: Call newly added function Sema::CheckInitializer() from
> Sema::ParseDeclarator().
> Step 3: Give InitListExpr's a preliminary type.
> Step 4: Start emitting diagnostics for simple assignments.
>
> Note:
>
> As a result of step 1, the CodeGen/mandel.c test asserts "Unimplemented agg
> expr!", which is expected.
>
> As a result of step 4, the test below now fails. This isn't expected and
> needs to be investigated (it appears type checking for C++ references is
> flawed in some way).
>
> ******************** TEST 'Sema/cxx-references.cpp' FAILED!
> ********************
> Command:
>  clang -fsyntax-only Sema/cxx-references.cpp
> Output:
> Sema/cxx-references.cpp:8:12: warning: incompatible pointer types assigning
> 'int &*' to 'int *'
>   int *p = &r;
>            ^~
> Sema/cxx-references.cpp:10:20: error: incompatible types assigning 'int
> (int)' to 'int (&)(int)'
>   int (&rg)(int) = g;
>                    ^
> Sema/cxx-references.cpp:13:18: error: incompatible types assigning 'int [3]'
> to 'int (&)[3]'
>   int (&ra)[3] = a;
>                  ^
> Sema/cxx-references.cpp:16:14: error: incompatible types assigning 'int *'
> to 'int *&'
>   int *& P = Q;
>              ^
> 4 diagnostics generated.
> ******************** TEST 'Sema/cxx-references.cpp' FAILED!
> ********************
>
>
>
>
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>



More information about the cfe-commits mailing list