[cfe-commits] r130643 - in /cfe/trunk: include/clang/Basic/TypeTraits.h lib/AST/StmtPrinter.cpp lib/Parse/ParseExprCXX.cpp lib/Sema/SemaExprCXX.cpp

Chandler Carruth chandlerc at gmail.com
Sun May 1 00:23:14 PDT 2011


Author: chandlerc
Date: Sun May  1 02:23:14 2011
New Revision: 130643

URL: http://llvm.org/viewvc/llvm-project?rev=130643&view=rev
Log:
Remove the type traits UTT_IsLvalueExpr and UTT_IsRvalueExpr.

As might be surmised from their names, these aren't type traits, they're
expression traits. Amazingly enough, they're expression traits that we
have, and fully implement. These "type" traits are even parsed from the
same tokens as the expression traits. Luckily, the parser only tried the
expression trait parsing for these tokens, so this was all just a pile
of dead code.

Modified:
    cfe/trunk/include/clang/Basic/TypeTraits.h
    cfe/trunk/lib/AST/StmtPrinter.cpp
    cfe/trunk/lib/Parse/ParseExprCXX.cpp
    cfe/trunk/lib/Sema/SemaExprCXX.cpp

Modified: cfe/trunk/include/clang/Basic/TypeTraits.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/TypeTraits.h?rev=130643&r1=130642&r2=130643&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/TypeTraits.h (original)
+++ cfe/trunk/include/clang/Basic/TypeTraits.h Sun May  1 02:23:14 2011
@@ -40,7 +40,6 @@
     UTT_IsFundamental,
     UTT_IsIntegral,
     UTT_IsLiteral,
-    UTT_IsLvalueExpr,
     UTT_IsLvalueReference,
     UTT_IsMemberFunctionPointer,
     UTT_IsMemberObjectPointer,
@@ -50,7 +49,6 @@
     UTT_IsPointer,
     UTT_IsPolymorphic,
     UTT_IsReference,
-    UTT_IsRvalueExpr,
     UTT_IsRvalueReference,
     UTT_IsScalar,
     UTT_IsSigned,

Modified: cfe/trunk/lib/AST/StmtPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/StmtPrinter.cpp?rev=130643&r1=130642&r2=130643&view=diff
==============================================================================
--- cfe/trunk/lib/AST/StmtPrinter.cpp (original)
+++ cfe/trunk/lib/AST/StmtPrinter.cpp Sun May  1 02:23:14 2011
@@ -1315,7 +1315,6 @@
   case UTT_IsFunction:              return "__is_function";
   case UTT_IsFundamental:           return "__is_fundamental";
   case UTT_IsIntegral:              return "__is_integral";
-  case UTT_IsLvalueExpr:            return "__is_lvalue_expr";
   case UTT_IsLvalueReference:       return "__is_lvalue_reference";
   case UTT_IsMemberFunctionPointer: return "__is_member_function_pointer";
   case UTT_IsMemberObjectPointer:   return "__is_member_object_pointer";
@@ -1325,7 +1324,6 @@
   case UTT_IsPointer:               return "__is_pointer";
   case UTT_IsPolymorphic:         return "__is_polymorphic";
   case UTT_IsReference:             return "__is_reference";
-  case UTT_IsRvalueExpr:            return "__is_rvalue_expr";
   case UTT_IsRvalueReference:       return "__is_rvalue_reference";
   case UTT_IsScalar:                return "__is_scalar";
   case UTT_IsSigned:                return "__is_signed";

Modified: cfe/trunk/lib/Parse/ParseExprCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseExprCXX.cpp?rev=130643&r1=130642&r2=130643&view=diff
==============================================================================
--- cfe/trunk/lib/Parse/ParseExprCXX.cpp (original)
+++ cfe/trunk/lib/Parse/ParseExprCXX.cpp Sun May  1 02:23:14 2011
@@ -1938,7 +1938,6 @@
   case tok::kw___is_function:                return UTT_IsFunction;
   case tok::kw___is_fundamental:             return UTT_IsFundamental;
   case tok::kw___is_integral:                return UTT_IsIntegral;
-  case tok::kw___is_lvalue_expr:             return UTT_IsLvalueExpr;
   case tok::kw___is_lvalue_reference:        return UTT_IsLvalueReference;
   case tok::kw___is_member_function_pointer: return UTT_IsMemberFunctionPointer;
   case tok::kw___is_member_object_pointer:   return UTT_IsMemberObjectPointer;
@@ -1950,7 +1949,6 @@
   case tok::kw___is_pointer:                 return UTT_IsPointer;
   case tok::kw___is_polymorphic:          return UTT_IsPolymorphic;
   case tok::kw___is_reference:               return UTT_IsReference;
-  case tok::kw___is_rvalue_expr:             return UTT_IsRvalueExpr;
   case tok::kw___is_rvalue_reference:        return UTT_IsRvalueReference;
   case tok::kw___is_scalar:                  return UTT_IsScalar;
   case tok::kw___is_signed:                  return UTT_IsSigned;

Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaExprCXX.cpp?rev=130643&r1=130642&r2=130643&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaExprCXX.cpp (original)
+++ cfe/trunk/lib/Sema/SemaExprCXX.cpp Sun May  1 02:23:14 2011
@@ -2371,11 +2371,6 @@
   // these class templates. We also try to follow any GCC documented behavior
   // in these expressions to ensure portability of standard libraries.
   switch (UTT) {
-    // FIXME: These shouldn't be UnaryTypeTraits as they aren't traits on types.
-  case UTT_IsLvalueExpr:
-  case UTT_IsRvalueExpr:
-    assert(0 && "Expression traits found in type trait handling code.");
-
     // is_complete_type somewhat obviously cannot require a complete type.
   case UTT_IsCompleteType:
     // Fallthrough





More information about the cfe-commits mailing list