[cfe-commits] r160068 - in /cfe/trunk: include/clang/Frontend/ lib/Frontend/ test/Frontend/ test/Lexer/ test/Modules/ test/Modules/Inputs/Module.framework/Headers/ test/PCH/ test/Preprocessor/ test/SemaCXX/

Tom Care tom.care at uqconnect.edu.au
Tue Aug 7 00:59:48 PDT 2012


Hi Andy and Jordan,

This commit is causing an assertion for me with the following:

struct A {};
void foo(A *placement) {
  new (placement) A();
}

The assertion occurs when compiling with clang -cc1 -verify. It does not assert when omitting -verify. Let me know if you need any more info or can't reproduce the assertion.

Thanks,

Tom

On 12/07/2012, at 5:58 AM, Jordan Rose <jordan_rose at apple.com> wrote:

> Author: jrose
> Date: Wed Jul 11 14:58:23 2012
> New Revision: 160068
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=160068&view=rev
> Log:
> Allow -verify directives to be filtered by preprocessing.
> 
> This is accomplished by making VerifyDiagnosticsConsumer a CommentHandler,
> which then only reads the -verify directives that are actually in live
> blocks of code. It also makes it simpler to handle -verify directives that
> appear in header files, though we still have to manually reparse some files
> depending on how they are generated.
> 
> This requires some test changes. In particular, all PCH tests now have their
> -verify directives outside the "header" portion of the file, using the @line
> syntax added in r159978. Other tests have been modified mostly to make it
> clear what is being tested, and to prevent polluting the expected output with
> the directives themselves.
> 
> Patch by Andy Gibbs! (with slight modifications)
> 
> The new Frontend/verify-* tests exercise the functionality of this commit,
> as well as r159978, r159979, and r160053 (Andy's other -verify enhancements).
> 
> Added:
>    cfe/trunk/test/Frontend/verify-directive.h
>    cfe/trunk/test/Frontend/verify-fatal.c
>    cfe/trunk/test/Frontend/verify.c
> Modified:
>    cfe/trunk/include/clang/Frontend/VerifyDiagnosticConsumer.h
>    cfe/trunk/lib/Frontend/VerifyDiagnosticConsumer.cpp
>    cfe/trunk/test/Lexer/bcpl-escaped-newline.c
>    cfe/trunk/test/Lexer/conflict-marker.c
>    cfe/trunk/test/Modules/Inputs/Module.framework/Headers/Module.h
>    cfe/trunk/test/Modules/on-demand-build.m
>    cfe/trunk/test/PCH/attrs.c
>    cfe/trunk/test/PCH/chain-staticvar-instantiation.cpp
>    cfe/trunk/test/PCH/cxx-static_assert.cpp
>    cfe/trunk/test/PCH/cxx-trailing-return.cpp
>    cfe/trunk/test/PCH/cxx0x-default-delete.cpp
>    cfe/trunk/test/PCH/cxx0x-delegating-ctors.cpp
>    cfe/trunk/test/PCH/cxx11-constexpr.cpp
>    cfe/trunk/test/PCH/cxx11-enum-template.cpp
>    cfe/trunk/test/PCH/cxx11-user-defined-literals.cpp
>    cfe/trunk/test/PCH/ms-if-exists.cpp
>    cfe/trunk/test/PCH/replaced-decl.m
>    cfe/trunk/test/PCH/typo2.cpp
>    cfe/trunk/test/PCH/variables.c
>    cfe/trunk/test/Preprocessor/line-directive.c
>    cfe/trunk/test/Preprocessor/macro_paste_c_block_comment.c
>    cfe/trunk/test/Preprocessor/warning_tests.c
>    cfe/trunk/test/SemaCXX/warn-deprecated-header.cpp





More information about the cfe-commits mailing list