Skip to content
  1. Nov 10, 2007
    • Steve Naroff's avatar
      · 257b4a24
      Steve Naroff authored
      Fix a basic bug (having to do with typedefs) in Sema::UsualArithmeticConversions(). 
      
      This resuled in the following crash below.
      
      Also modified the usual-float.c test case to capture this case.
      
      [steve-naroffs-imac:clang/test/Sema] snaroff% ../../../../Debug/bin/clang usual-float.c
      Assertion failed: (0 && "Sema::UsualArithmeticConversions(): illegal float comparison"), function UsualArithmeticConversions, file SemaExpr.cpp, line 960.
      0   clang                               0x001ef9b9 _ZN40_GLOBAL__N_Signals.cpp_00000000_4E6DAF8315PrintStackTraceEv + 45
      1   clang                               0x001efd5f _ZN40_GLOBAL__N_Signals.cpp_00000000_4E6DAF8313SignalHandlerEi + 323
      2   libSystem.B.dylib                   0x90c6297b _sigtramp + 43
      3   ???                                 0xffffffff 0x0 + 4294967295
      4   libSystem.B.dylib                   0x90cdb782 raise + 26
      5   libSystem.B.dylib                   0x90cead3f abort + 73
      6   libSystem.B.dylib                   0x90cdc923 __assert_rtn + 101
      7   clang                               0x00077316 _ZN5clang4Sema26UsualArithmeticConversionsERPNS_4ExprES3_b + 1004
      8   clang                               0x000803cf _ZN5clang4Sema27CheckMultiplyDivideOperandsERPNS_4ExprES3_NS_14SourceLocationEb + 181
      9   clang                               0x0007a8e8 _ZN5clang4Sema10ActOnBinOpENS_14SourceLocationENS_3tok9TokenKindEPvS4_ + 472
      10  clang                               0x000cf058 _ZN5clang6Parser26ParseRHSOfBinaryExpressionENS_6Action12ActionResultILj0EEEj + 1286
      11  clang                               0x000cf2de _ZN5clang6Parser25ParseAssignmentExpressionEv + 86
      
      llvm-svn: 43985
      257b4a24
    • Ted Kremenek's avatar
      Fixed a bug introduced by my last patch. Now we properly clear out the BatchIDVec · b0cdfeb4
      Ted Kremenek authored
      vector before reusing it.
      
      llvm-svn: 43984
      b0cdfeb4
    • Ted Kremenek's avatar
      Fixed hack in BatchReadOwnedPtrs to no longer use the array of pointers passed in for · cdf5fca3
      Ted Kremenek authored
      deserialization as a temporary location for storing serialized pointer identifiers. The
      definition of SerializedPtrID will likely change significantly in the future, and the
      current implementation caused compilation errors on some 64-bit machines.
      
      llvm-svn: 43983
      cdf5fca3
    • Ted Kremenek's avatar
      195c478e
    • Steve Naroff's avatar
      · 68754c59
      Steve Naroff authored
      Since we are all working on Leopard, change the built-in MacOS X version number (__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) to target Leopard. This is only a short term solution, until the clang driver implements the "-mmacosx-version-min" flag (which will compute this value based on the target).
      
      llvm-svn: 43981
      68754c59
    • Fariborz Jahanian's avatar
      Minor code clean up in method def area. · 6aafd413
      Fariborz Jahanian authored
      llvm-svn: 43980
      6aafd413
    • Fariborz Jahanian's avatar
    • Arnold Schwaighofer's avatar
      d2c16ff9
    • Ted Kremenek's avatar
      Changed the serialization of IdentifierTable to only serialize out entries · 739156ab
      Ted Kremenek authored
      that are referenced in the ASTs. This assumes that we serialize out the
      decls/stmts first, and use the pointer-tracking logic in the Serializer to
      determine if an IdentifierInfo (or its string key) is ever referenced.
      
      This is a significant space optimization for serialized ASTs.
      
      Consider the following program:
      
      void foo(int x,int y) {
        return x > y ? x : y+1;
      }
      
      Here are the sizes of the files for the serialized ASTs:
      
              Full IdentifierTable: 23676 bytes
       Only-referenced Identifiers:   304 bytes.
      
      For this simple program, this is a 77% reduction in the file size of the
      serialized ASTs.
      
      llvm-svn: 43975
      739156ab
    • Ted Kremenek's avatar
      Modifed the test serialization driver to... · 11d700bf
      Ted Kremenek authored
      (1) serialize out top-level decls BEFORE serializing out translation unit
      structures like ASTContext.
      
      (2) deserialize out translation unit structures like ASTContext before
      top-level decls by first skipping the decls in the bitstream, deserializing
      ASTContext and friends, and then jumping back to the bitstream block with the
      decls and then deserializing them.
      
      Change (1) allows us to utilize the pointer-tracking system in the Serializer
      to only serialize out metadata that is actually referenced by the ASTS.
      
      Change (2) allows us to deserialize the metadata first as before, which
      signficantly reduces the amount of pointer backpatching the deserializer
      would have to do if the decls were deserialized first.
      
      llvm-svn: 43974
      11d700bf
    • Ted Kremenek's avatar
      Added "random access" to the Deserializer to allow a client to jump to any · 55e30be8
      Ted Kremenek authored
      serialized block in the bitstream, including a block in an entirely different
      nesting than the current block. This is useful for deserializing objects from
      a bitstream in an order different from the order that they were serialized.
      
      llvm-svn: 43973
      55e30be8
    • Ted Kremenek's avatar
      Made Deserializer a friend class of BitstreamReader. · a7f49ce5
      Ted Kremenek authored
      Moved some of the logic in BitstreamReader::ExitBlock into a utility function
      BitstreamReader::PopBlockScope. The latter is a private method. It will also
      be called by Deserializer to manipulate the current "block scope."
      
      llvm-svn: 43972
      a7f49ce5
    • Evan Cheng's avatar
      Added -test-opts to specify test options. · 9e0216de
      Evan Cheng authored
      llvm-svn: 43971
      9e0216de
    • Chris Lattner's avatar
      rename getInstantiationLoc to match the scheme of isPhysicalLoc. · ef067a28
      Chris Lattner authored
      llvm-svn: 43969
      ef067a28
    • Chris Lattner's avatar
      change source location to have two bits for macros, tracking · 198b3e08
      Chris Lattner authored
      whether the location is the start and/or end of an expansion.
      These are currently not set or used by anything.
      
      llvm-svn: 43968
      198b3e08
  2. Nov 09, 2007
Loading