[prev in list] [next in list] [prev in thread] [next in thread] 

List:       llvm-dev
Subject:    [LLVMdev] PATCH: Typo is StructType assert
From:       Reid Spencer <reid () x10sys ! com>
Date:       2004-03-28 19:06:55
Message-ID: 1080495466.25793.66.camel () bashful ! x10sys ! com
[Download RAW message or body]

[Attachment #2 (multipart/mixed)]

[Attachment #4 (multipart/alternative)]


If you put a VoidTy as a field of a StructType, you get:

 /proj/work/llvm/llvm/lib/VMCore/Type.cpp:380:
llvm::StructType::StructType(const std::vector<const llvm::Type*,
std::allocator<const llvm::Type*> >&): Assertion `Types[i] !=3D
Type::VoidTy && "Void type in method prototype!!"' failed.

I believe "method prototype" should be "structure field" so the attached
patch fixes this assertion's comment.

Reid.


[Attachment #7 (text/html)]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.0.9">
</HEAD>
<BODY>
If you put a VoidTy as a field of a StructType, you get:<BR>
<BR>
 /proj/work/llvm/llvm/lib/VMCore/Type.cpp:380: llvm::StructType::StructType(const \
std::vector&lt;const llvm::Type*, std::allocator&lt;const llvm::Type*&gt; &gt;&amp;): \
Assertion `Types[i] != Type::VoidTy &amp;&amp; &quot;Void type in method \
prototype!!&quot;' failed.<BR> <BR>
I believe &quot;method prototype&quot; should be &quot;structure field&quot; so the \
attached patch fixes this assertion's comment.<BR> <BR>
Reid.<BR>
<BR>
</BODY>
</HTML>


["patch.txt" (patch.txt)]

Index: lib/VMCore/Type.cpp
===================================================================
RCS file: /var/cvs/llvm/llvm/lib/VMCore/Type.cpp,v
retrieving revision 1.97
diff -a -c -p -r1.97 Type.cpp
*** lib/VMCore/Type.cpp	26 Mar 2004 21:43:22 -0000	1.97
--- lib/VMCore/Type.cpp	28 Mar 2004 17:34:41 -0000
*************** StructType::StructType(const std::vector
*** 412,418 ****
    ContainedTys.reserve(Types.size());
    bool isAbstract = false;
    for (unsigned i = 0; i < Types.size(); ++i) {
!     assert(Types[i] != Type::VoidTy && "Void type in method prototype!!");
      ContainedTys.push_back(PATypeHandle(Types[i], this));
      isAbstract |= Types[i]->isAbstract();
    }
--- 412,418 ----
    ContainedTys.reserve(Types.size());
    bool isAbstract = false;
    for (unsigned i = 0; i < Types.size(); ++i) {
!     assert(Types[i] != Type::VoidTy && "Void type for structure field!!");
      ContainedTys.push_back(PATypeHandle(Types[i], this));
      isAbstract |= Types[i]->isAbstract();
    }

["signature.asc" (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic