Skip to content
  • Alexander Kornienko's avatar
    Use lexing mode based on FormatStyle.Standard. · 1e80887d
    Alexander Kornienko authored
    Summary:
    Some valid pre-C++11 constructs change meaning when lexed in C++11
    mode, e.g.
    #define x(_a) printf("foo"_a);
    (example from http://llvm.org/bugs/show_bug.cgi?id=16342). "foo"_a is treated as
    a user-defined string literal when parsed in C++11 mode.
    In order to deal with this correctly, we need to set lexing mode according to
    which standard the code conforms to. We already have a configuration value for
    this (FormatStyle.Standard), which seems to be appropriate to use in this case
    as well.
    
    Reviewers: klimek
    
    CC: cfe-commits, gribozavr
    
    Differential Revision: http://llvm-reviews.chandlerc.com/D1028
    
    llvm-svn: 185149
    1e80887d
Loading