Fold the useful features of alist and alist_node into ilist, and
[oota-llvm.git] / include / llvm / Support / Annotation.h
index b957447715c8597ef5acf9bce170a63f2b2e7bb4..2be1c1061690b2f08baa885d9e35546751168688 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by the LLVM research group and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
@@ -43,7 +43,9 @@ class AnnotationID {
   unsigned ID;
 
   AnnotationID();                             // Default ctor is disabled
-  inline AnnotationID(unsigned i) : ID(i) {}  // Only creatable from AnnMgr
+
+  // AnnotationID is only creatable from AnnMgr.
+  explicit inline AnnotationID(unsigned i) : ID(i) {}
 public:
   inline AnnotationID(const AnnotationID &A) : ID(A.ID) {}
 
@@ -67,7 +69,7 @@ class Annotation {
   AnnotationID ID;         // ID number, as obtained from AnnotationManager
   Annotation *Next;        // The next annotation in the linked list
 public:
-  inline Annotation(AnnotationID id) : ID(id), Next(0) {}
+  explicit inline Annotation(AnnotationID id) : ID(id), Next(0) {}
   virtual ~Annotation();  // Designed to be subclassed
 
   // getID - Return the unique ID# of this annotation
@@ -81,7 +83,7 @@ public:
 //===----------------------------------------------------------------------===//
 //
 // Annotable - This class is used as a base class for all objects that would
-// like to have annotation capability.  
+// like to have annotation capability.
 //
 // Annotable objects keep their annotation list sorted as annotations are
 // inserted and deleted.  This is used to ensure that annotations with identical