Fix typos in clang

Found via codespell -q 3 -I ../clang-whitelist.txt
Where whitelist consists of:

  archtype
  cas
  classs
  checkk
  compres
  definit
  frome
  iff
  inteval
  ith
  lod
  methode
  nd
  optin
  ot
  pres
  statics
  te
  thru

Patch by luzpaz! (This is a subset of D44188 that applies cleanly with a few
files that have dubious fixes reverted.)

Differential revision: https://reviews.llvm.org/D44188

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@329399 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Alexander Kornienko 2018-04-06 15:14:32 +00:00
parent 0a1726abd9
commit b8b9458165
231 changed files with 349 additions and 349 deletions

View File

@ -881,7 +881,7 @@ CursorKind.INVALID_CODE = CursorKind(73)
CursorKind.UNEXPOSED_EXPR = CursorKind(100) CursorKind.UNEXPOSED_EXPR = CursorKind(100)
# An expression that refers to some value declaration, such as a function, # An expression that refers to some value declaration, such as a function,
# varible, or enumerator. # variable, or enumerator.
CursorKind.DECL_REF_EXPR = CursorKind(101) CursorKind.DECL_REF_EXPR = CursorKind(101)
# An expression that refers to a member of a struct, union, class, Objective-C # An expression that refers to a member of a struct, union, class, Objective-C
@ -1501,7 +1501,7 @@ class Cursor(Structure):
return conf.lib.clang_getCursorDefinition(self) return conf.lib.clang_getCursorDefinition(self)
def get_usr(self): def get_usr(self):
"""Return the Unified Symbol Resultion (USR) for the entity referenced """Return the Unified Symbol Resolution (USR) for the entity referenced
by the given cursor (or None). by the given cursor (or None).
A Unified Symbol Resolution (USR) is a string that identifies a A Unified Symbol Resolution (USR) is a string that identifies a

View File

@ -21,7 +21,7 @@ set(BUG_REPORT_URL "http://developer.apple.com/bugreporter/" CACHE STRING "")
set(LLVM_BUILD_EXTERNAL_COMPILER_RT ON CACHE BOOL "Build Compiler-RT with just-built clang") set(LLVM_BUILD_EXTERNAL_COMPILER_RT ON CACHE BOOL "Build Compiler-RT with just-built clang")
set(COMPILER_RT_ENABLE_IOS ON CACHE BOOL "Build iOS Compiler-RT libraries") set(COMPILER_RT_ENABLE_IOS ON CACHE BOOL "Build iOS Compiler-RT libraries")
set(LLVM_CREATE_XCODE_TOOLCHAIN ON CACHE BOOL "Generate targets to create and install an Xcode compatable toolchain") set(LLVM_CREATE_XCODE_TOOLCHAIN ON CACHE BOOL "Generate targets to create and install an Xcode compatible toolchain")
# Make unit tests (if present) part of the ALL target # Make unit tests (if present) part of the ALL target
set(LLVM_BUILD_TESTS ON CACHE BOOL "") set(LLVM_BUILD_TESTS ON CACHE BOOL "")

View File

@ -4557,7 +4557,7 @@ matcher, or is a pointer to a type that matches the InnerMatcher.
<tr><td>Matcher&lt;<a href="http://clang.llvm.org/doxygen/classclang_1_1CXXMethodDecl.html">CXXMethodDecl</a>&gt;</td><td class="name" onclick="toggle('forEachOverridden0')"><a name="forEachOverridden0Anchor">forEachOverridden</a></td><td>Matcher&lt;<a href="http://clang.llvm.org/doxygen/classclang_1_1CXXMethodDecl.html">CXXMethodDecl</a>&gt; InnerMatcher</td></tr> <tr><td>Matcher&lt;<a href="http://clang.llvm.org/doxygen/classclang_1_1CXXMethodDecl.html">CXXMethodDecl</a>&gt;</td><td class="name" onclick="toggle('forEachOverridden0')"><a name="forEachOverridden0Anchor">forEachOverridden</a></td><td>Matcher&lt;<a href="http://clang.llvm.org/doxygen/classclang_1_1CXXMethodDecl.html">CXXMethodDecl</a>&gt; InnerMatcher</td></tr>
<tr><td colspan="4" class="doc" id="forEachOverridden0"><pre>Matches each method overriden by the given method. This matcher may <tr><td colspan="4" class="doc" id="forEachOverridden0"><pre>Matches each method overridden by the given method. This matcher may
produce multiple matches. produce multiple matches.
Given Given

View File

@ -21,7 +21,7 @@ This fix is overly conservative though. So i did a bit of investigation as to
how model std::initializer_list better. how model std::initializer_list better.
According to the standard, std::initializer_list<T> is an object that has According to the standard, std::initializer_list<T> is an object that has
methods begin(), end(), and size(), where begin() returns a pointer to continous methods begin(), end(), and size(), where begin() returns a pointer to continuous
array of size() objects of type T, and end() is equal to begin() plus size(). array of size() objects of type T, and end() is equal to begin() plus size().
The standard does hint that it should be possible to implement The standard does hint that it should be possible to implement
std::initializer_list<T> as a pair of pointers, or as a pointer and a size std::initializer_list<T> as a pair of pointers, or as a pointer and a size

View File

@ -1065,7 +1065,7 @@ HTML_STYLESHEET =
# defined cascading style sheet that is included after the standard style sheets # defined cascading style sheet that is included after the standard style sheets
# created by doxygen. Using this option one can overrule certain style aspects. # created by doxygen. Using this option one can overrule certain style aspects.
# This is preferred over using HTML_STYLESHEET since it does not replace the # This is preferred over using HTML_STYLESHEET since it does not replace the
# standard style sheet and is therefor more robust against future updates. # standard style sheet and is therefore more robust against future updates.
# Doxygen will copy the style sheet file to the output directory. For an example # Doxygen will copy the style sheet file to the output directory. For an example
# see the documentation. # see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.

View File

@ -4988,7 +4988,7 @@ enum CXCompletionChunkKind {
* for "int x", indicating that the current argument will initialize that * for "int x", indicating that the current argument will initialize that
* parameter. After typing further, to \c add(17, (where the code-completion * parameter. After typing further, to \c add(17, (where the code-completion
* point is after the ","), the code-completion string will contain a * point is after the ","), the code-completion string will contain a
* "current paremeter" chunk to "int y". * "current parameter" chunk to "int y".
*/ */
CXCompletionChunk_CurrentParameter, CXCompletionChunk_CurrentParameter,
/** /**
@ -5409,7 +5409,7 @@ CINDEX_LINKAGE unsigned clang_defaultCodeCompleteOptions(void);
* user types punctuation characters or whitespace, at which point the * user types punctuation characters or whitespace, at which point the
* code-completion location will coincide with the cursor. For example, if \c p * code-completion location will coincide with the cursor. For example, if \c p
* is a pointer, code-completion might be triggered after the "-" and then * is a pointer, code-completion might be triggered after the "-" and then
* after the ">" in \c p->. When the code-completion location is afer the ">", * after the ">" in \c p->. When the code-completion location is after the ">",
* the completion results will provide, e.g., the members of the struct that * the completion results will provide, e.g., the members of the struct that
* "p" points to. The client is responsible for placing the cursor at the * "p" points to. The client is responsible for placing the cursor at the
* beginning of the token currently being typed, then filtering the results * beginning of the token currently being typed, then filtering the results

View File

@ -1113,7 +1113,7 @@ public:
/// \brief Apply Objective-C protocol qualifiers to the given type. /// \brief Apply Objective-C protocol qualifiers to the given type.
/// \param allowOnPointerType specifies if we can apply protocol /// \param allowOnPointerType specifies if we can apply protocol
/// qualifiers on ObjCObjectPointerType. It can be set to true when /// qualifiers on ObjCObjectPointerType. It can be set to true when
/// contructing the canonical type of a Objective-C type parameter. /// constructing the canonical type of a Objective-C type parameter.
QualType applyObjCProtocolQualifiers(QualType type, QualType applyObjCProtocolQualifiers(QualType type,
ArrayRef<ObjCProtocolDecl *> protocols, bool &hasError, ArrayRef<ObjCProtocolDecl *> protocols, bool &hasError,
bool allowOnPointerType = false) const; bool allowOnPointerType = false) const;

View File

@ -269,7 +269,7 @@ public:
/// \brief Imposes an order on \c DynTypedNode. /// \brief Imposes an order on \c DynTypedNode.
/// ///
/// Supports comparison of nodes that support memoization. /// Supports comparison of nodes that support memoization.
/// FIXME: Implement comparsion for other node types (currently /// FIXME: Implement comparison for other node types (currently
/// only Stmt, Decl, Type and NestedNameSpecifier return memoization data). /// only Stmt, Decl, Type and NestedNameSpecifier return memoization data).
bool operator<(const DynTypedNode &Other) const { bool operator<(const DynTypedNode &Other) const {
if (!NodeKind.isSame(Other.NodeKind)) if (!NodeKind.isSame(Other.NodeKind))

View File

@ -324,7 +324,7 @@ public:
} }
}; };
/// \brief Replacable canonical proxy adaptor class that provides the link /// \brief Replaceable canonical proxy adaptor class that provides the link
/// between a canonical type and the accessors of the type. /// between a canonical type and the accessors of the type.
/// ///
/// The CanProxyAdaptor is a replaceable class template that is instantiated /// The CanProxyAdaptor is a replaceable class template that is instantiated

View File

@ -990,7 +990,7 @@ struct DeclInfo {
/// CurrentDecl is the declaration with which the FullComment is associated. /// CurrentDecl is the declaration with which the FullComment is associated.
/// ///
/// It can be different from \c CommentDecl. It happens when we we decide /// It can be different from \c CommentDecl. It happens when we decide
/// that the comment originally attached to \c CommentDecl is fine for /// that the comment originally attached to \c CommentDecl is fine for
/// \c CurrentDecl too (for example, for a redeclaration or an overrider of /// \c CurrentDecl too (for example, for a redeclaration or an overrider of
/// \c CommentDecl). /// \c CommentDecl).

View File

@ -72,7 +72,7 @@ class Token {
/// Integer value associated with a token. /// Integer value associated with a token.
/// ///
/// If the token is a konwn command, contains command ID and TextPtr is /// If the token is a known command, contains command ID and TextPtr is
/// unused (command spelling can be found with CommandTraits). Otherwise, /// unused (command spelling can be found with CommandTraits). Otherwise,
/// contains the length of the string that starts at TextPtr. /// contains the length of the string that starts at TextPtr.
unsigned IntVal; unsigned IntVal;

View File

@ -12,7 +12,7 @@
/// To collect data from Stmt nodes, subclass ConstStmtVisitor and include /// To collect data from Stmt nodes, subclass ConstStmtVisitor and include
/// StmtDataCollectors.inc after defining the macros that you need. This /// StmtDataCollectors.inc after defining the macros that you need. This
/// provides data collection implementations for most Stmt kinds. Note /// provides data collection implementations for most Stmt kinds. Note
/// that that code requires some conditions to be met: /// that the code requires some conditions to be met:
/// ///
/// - There must be a method addData(const T &Data) that accepts strings, /// - There must be a method addData(const T &Data) that accepts strings,
/// integral types as well as QualType. All data is forwarded using /// integral types as well as QualType. All data is forwarded using

View File

@ -1078,7 +1078,7 @@ public:
/// \brief Determine whether this class has a user-declared copy assignment /// \brief Determine whether this class has a user-declared copy assignment
/// operator. /// operator.
/// ///
/// When false, a copy assigment operator will be implicitly declared. /// When false, a copy assignment operator will be implicitly declared.
bool hasUserDeclaredCopyAssignment() const { bool hasUserDeclaredCopyAssignment() const {
return data().UserDeclaredSpecialMembers & SMF_CopyAssignment; return data().UserDeclaredSpecialMembers & SMF_CopyAssignment;
} }
@ -1941,7 +1941,7 @@ public:
} }
// \brief Determine whether this type is an Interface Like type for // \brief Determine whether this type is an Interface Like type for
// __interface inheritence purposes. // __interface inheritance purposes.
bool isInterfaceLike() const; bool isInterfaceLike() const;
static bool classof(const Decl *D) { return classofKind(D->getKind()); } static bool classof(const Decl *D) { return classofKind(D->getKind()); }

View File

@ -586,7 +586,7 @@ public:
bool EvaluateAsRValue(EvalResult &Result, const ASTContext &Ctx) const; bool EvaluateAsRValue(EvalResult &Result, const ASTContext &Ctx) const;
/// EvaluateAsBooleanCondition - Return true if this is a constant /// EvaluateAsBooleanCondition - Return true if this is a constant
/// which we we can fold and convert to a boolean condition using /// which we can fold and convert to a boolean condition using
/// any crazy technique that we want to, even if the expression has /// any crazy technique that we want to, even if the expression has
/// side-effects. /// side-effects.
bool EvaluateAsBooleanCondition(bool &Result, const ASTContext &Ctx) const; bool EvaluateAsBooleanCondition(bool &Result, const ASTContext &Ctx) const;
@ -3100,7 +3100,7 @@ public:
static Opcode negateComparisonOp(Opcode Opc) { static Opcode negateComparisonOp(Opcode Opc) {
switch (Opc) { switch (Opc) {
default: default:
llvm_unreachable("Not a comparsion operator."); llvm_unreachable("Not a comparison operator.");
case BO_LT: return BO_GE; case BO_LT: return BO_GE;
case BO_GT: return BO_LE; case BO_GT: return BO_LE;
case BO_LE: return BO_GT; case BO_LE: return BO_GT;
@ -3113,7 +3113,7 @@ public:
static Opcode reverseComparisonOp(Opcode Opc) { static Opcode reverseComparisonOp(Opcode Opc) {
switch (Opc) { switch (Opc) {
default: default:
llvm_unreachable("Not a comparsion operator."); llvm_unreachable("Not a comparison operator.");
case BO_LT: return BO_GT; case BO_LT: return BO_GT;
case BO_GT: return BO_LT; case BO_GT: return BO_LT;
case BO_LE: return BO_GE; case BO_LE: return BO_GE;

View File

@ -97,7 +97,7 @@ public:
/// Add a set of ASTContexts as possible origins. /// Add a set of ASTContexts as possible origins.
/// ///
/// Usually the set will be initialized in the constructor, but long-lived /// Usually the set will be initialized in the constructor, but long-lived
/// ExternalASTMergers may neeed to import from new sources (for example, /// ExternalASTMergers may need to import from new sources (for example,
/// newly-parsed source files). /// newly-parsed source files).
/// ///
/// Ensures that Importers does not gain duplicate entries as a result. /// Ensures that Importers does not gain duplicate entries as a result.

View File

@ -250,11 +250,11 @@ public:
NestedNameSpecifierLoc(NestedNameSpecifier *Qualifier, void *Data) NestedNameSpecifierLoc(NestedNameSpecifier *Qualifier, void *Data)
: Qualifier(Qualifier), Data(Data) {} : Qualifier(Qualifier), Data(Data) {}
/// \brief Evalutes true when this nested-name-specifier location is /// \brief Evaluates true when this nested-name-specifier location is
/// non-empty. /// non-empty.
explicit operator bool() const { return Qualifier; } explicit operator bool() const { return Qualifier; }
/// \brief Evalutes true when this nested-name-specifier location is /// \brief Evaluates true when this nested-name-specifier location is
/// empty. /// empty.
bool hasQualifier() const { return Qualifier; } bool hasQualifier() const { return Qualifier; }

View File

@ -146,7 +146,7 @@ namespace clang {
/// from which they were produced. /// from which they were produced.
/// ///
/// By default, this visitor preorder traverses the AST. If postorder traversal /// By default, this visitor preorder traverses the AST. If postorder traversal
/// is needed, the \c shouldTraversePostOrder method needs to be overriden /// is needed, the \c shouldTraversePostOrder method needs to be overridden
/// to return \c true. /// to return \c true.
template <typename Derived> class RecursiveASTVisitor { template <typename Derived> class RecursiveASTVisitor {
public: public:

View File

@ -629,10 +629,10 @@ public:
/// Distribute Loop condition used when composing 'omp distribute' /// Distribute Loop condition used when composing 'omp distribute'
/// with 'omp for' in a same construct /// with 'omp for' in a same construct
Expr *Cond; Expr *Cond;
/// Update of LowerBound for statically sheduled omp loops for /// Update of LowerBound for statically scheduled omp loops for
/// outer loop in combined constructs (e.g. 'distribute parallel for') /// outer loop in combined constructs (e.g. 'distribute parallel for')
Expr *NLB; Expr *NLB;
/// Update of UpperBound for statically sheduled omp loops for /// Update of UpperBound for statically scheduled omp loops for
/// outer loop in combined constructs (e.g. 'distribute parallel for') /// outer loop in combined constructs (e.g. 'distribute parallel for')
Expr *NUB; Expr *NUB;
}; };
@ -666,9 +666,9 @@ public:
Expr *ST; Expr *ST;
/// \brief EnsureUpperBound -- expression UB = min(UB, NumIterations). /// \brief EnsureUpperBound -- expression UB = min(UB, NumIterations).
Expr *EUB; Expr *EUB;
/// \brief Update of LowerBound for statically sheduled 'omp for' loops. /// \brief Update of LowerBound for statically scheduled 'omp for' loops.
Expr *NLB; Expr *NLB;
/// \brief Update of UpperBound for statically sheduled 'omp for' loops. /// \brief Update of UpperBound for statically scheduled 'omp for' loops.
Expr *NUB; Expr *NUB;
/// \brief PreviousLowerBound - local variable passed to runtime in the /// \brief PreviousLowerBound - local variable passed to runtime in the
/// enclosing schedule or null if that does not apply. /// enclosing schedule or null if that does not apply.

View File

@ -2010,7 +2010,7 @@ public:
TagDecl *getAsTagDecl() const; TagDecl *getAsTagDecl() const;
/// If this is a pointer or reference to a RecordType, return the /// If this is a pointer or reference to a RecordType, return the
/// CXXRecordDecl that that type refers to. /// CXXRecordDecl that the type refers to.
/// ///
/// If this is not a pointer or reference, or the type being pointed to does /// If this is not a pointer or reference, or the type being pointed to does
/// not refer to a CXXRecordDecl, returns NULL. /// not refer to a CXXRecordDecl, returns NULL.

View File

@ -4298,7 +4298,7 @@ AST_MATCHER_P(CXXMethodDecl, ofClass,
InnerMatcher.matches(*Parent, Finder, Builder)); InnerMatcher.matches(*Parent, Finder, Builder));
} }
/// \brief Matches each method overriden by the given method. This matcher may /// \brief Matches each method overridden by the given method. This matcher may
/// produce multiple matches. /// produce multiple matches.
/// ///
/// Given /// Given

View File

@ -32,7 +32,7 @@ namespace til {
// Defines an interface used to traverse SExprs. Traversals have been made as // Defines an interface used to traverse SExprs. Traversals have been made as
// generic as possible, and are intended to handle any kind of pass over the // generic as possible, and are intended to handle any kind of pass over the
// AST, e.g. visiters, copying, non-destructive rewriting, destructive // AST, e.g. visitors, copying, non-destructive rewriting, destructive
// (in-place) rewriting, hashing, typing, etc. // (in-place) rewriting, hashing, typing, etc.
// //
// Traversals implement the functional notion of a "fold" operation on SExprs. // Traversals implement the functional notion of a "fold" operation on SExprs.

View File

@ -161,7 +161,7 @@ public:
/// The result of findClones can be further constrained with the constrainClones /// The result of findClones can be further constrained with the constrainClones
/// method. /// method.
/// ///
/// This class only searches for clones in exectuable source code /// This class only searches for clones in executable source code
/// (e.g. function bodies). Other clones (e.g. cloned comments or declarations) /// (e.g. function bodies). Other clones (e.g. cloned comments or declarations)
/// are not supported. /// are not supported.
class CloneDetector { class CloneDetector {

View File

@ -2661,7 +2661,7 @@ def LoopHint : Attr {
/// vectorize: vectorizes loop operations if State == Enable. /// vectorize: vectorizes loop operations if State == Enable.
/// vectorize_width: vectorize loop operations with width 'Value'. /// vectorize_width: vectorize loop operations with width 'Value'.
/// interleave: interleave multiple loop iterations if State == Enable. /// interleave: interleave multiple loop iterations if State == Enable.
/// interleave_count: interleaves 'Value' loop interations. /// interleave_count: interleaves 'Value' loop iterations.
/// unroll: fully unroll loop if State == Enable. /// unroll: fully unroll loop if State == Enable.
/// unroll_count: unrolls loop 'Value' times. /// unroll_count: unrolls loop 'Value' times.
/// distribute: attempt to distribute loop if State == Enable /// distribute: attempt to distribute loop if State == Enable

View File

@ -2798,7 +2798,7 @@ def NoThrowDocs : Documentation {
let Category = DocCatFunction; let Category = DocCatFunction;
let Content = [{ let Content = [{
Clang supports the GNU style ``__attribute__((nothrow))`` and Microsoft style Clang supports the GNU style ``__attribute__((nothrow))`` and Microsoft style
``__declspec(nothrow)`` attribute as an equivilent of `noexcept` on function ``__declspec(nothrow)`` attribute as an equivalent of `noexcept` on function
declarations. This attribute informs the compiler that the annotated function declarations. This attribute informs the compiler that the annotated function
does not throw an exception. This prevents exception-unwinding. This attribute does not throw an exception. This prevents exception-unwinding. This attribute
is particularly useful on functions in the C Standard Library that are is particularly useful on functions in the C Standard Library that are
@ -3110,7 +3110,7 @@ the ability to distinguish between different versions of the same entity but
with different ABI versions supported. For example, a newer version of a class with different ABI versions supported. For example, a newer version of a class
could have a different set of data members and thus have a different size. Using could have a different set of data members and thus have a different size. Using
the ``abi_tag`` attribute, it is possible to have different mangled names for the ``abi_tag`` attribute, it is possible to have different mangled names for
a global variable of the class type. Therefor, the old code could keep using a global variable of the class type. Therefore, the old code could keep using
the old manged name and the new code will use the new mangled name with tags. the old manged name and the new code will use the new mangled name with tags.
}]; }];
} }

View File

@ -751,7 +751,7 @@ def note_pragma_pack_pop_instead_reset : Note<
"did you intend to use '#pragma pack (pop)' instead of '#pragma pack()'?">; "did you intend to use '#pragma pack (pop)' instead of '#pragma pack()'?">;
// Follow the Microsoft implementation. // Follow the Microsoft implementation.
def warn_pragma_pack_show : Warning<"value of #pragma pack(show) == %0">; def warn_pragma_pack_show : Warning<"value of #pragma pack(show) == %0">;
def warn_pragma_pack_pop_identifer_and_alignment : Warning< def warn_pragma_pack_pop_identifier_and_alignment : Warning<
"specifying both a name and alignment to 'pop' is undefined">; "specifying both a name and alignment to 'pop' is undefined">;
def warn_pragma_pop_failed : Warning<"#pragma %0(pop, ...) failed: %1">, def warn_pragma_pop_failed : Warning<"#pragma %0(pop, ...) failed: %1">,
InGroup<IgnoredPragmas>; InGroup<IgnoredPragmas>;

View File

@ -30,11 +30,11 @@ namespace clang {
/// This supports LLVM residing in a separate repository from clang. /// This supports LLVM residing in a separate repository from clang.
std::string getLLVMRepositoryPath(); std::string getLLVMRepositoryPath();
/// \brief Retrieves the repository revision number (or identifer) from which /// \brief Retrieves the repository revision number (or identifier) from which
/// this Clang was built. /// this Clang was built.
std::string getClangRevision(); std::string getClangRevision();
/// \brief Retrieves the repository revision number (or identifer) from which /// \brief Retrieves the repository revision number (or identifier) from which
/// LLVM was built. /// LLVM was built.
/// ///
/// If Clang and LLVM are in the same repository, this returns the same /// If Clang and LLVM are in the same repository, this returns the same

View File

@ -266,7 +266,7 @@ public:
/// (2) finishing the entire builder. /// (2) finishing the entire builder.
/// ///
/// This is useful for emitting certain kinds of structure which /// This is useful for emitting certain kinds of structure which
/// contain some sort of summary field, generaly a count, before any /// contain some sort of summary field, generally a count, before any
/// of the data. By emitting a placeholder first, the structure can /// of the data. By emitting a placeholder first, the structure can
/// be emitted eagerly. /// be emitted eagerly.
PlaceholderPosition addPlaceholder() { PlaceholderPosition addPlaceholder() {

View File

@ -150,7 +150,7 @@ public:
/// Union this set of multilibs with another /// Union this set of multilibs with another
void combineWith(const MultilibSet &MS); void combineWith(const MultilibSet &MS);
/// Remove all of thie multilibs from the set /// Remove all of the multilibs from the set
void clear() { Multilibs.clear(); } void clear() { Multilibs.clear(); }
iterator begin() { return Multilibs.begin(); } iterator begin() { return Multilibs.begin(); }

View File

@ -210,7 +210,7 @@ private:
/// ///
/// Cache contains only source locations from preamble so it is /// Cache contains only source locations from preamble so it is
/// guaranteed that they stay valid when the SourceManager is recreated. /// guaranteed that they stay valid when the SourceManager is recreated.
/// This cache is used when loading preambule to increase performance /// This cache is used when loading preamble to increase performance
/// of that loading. It must be cleared when preamble is recreated. /// of that loading. It must be cleared when preamble is recreated.
llvm::StringMap<SourceLocation> PreambleSrcLocCache; llvm::StringMap<SourceLocation> PreambleSrcLocCache;

View File

@ -107,7 +107,7 @@ public:
/// Requires that CanReuse() is true. /// Requires that CanReuse() is true.
/// For in-memory preambles, PrecompiledPreamble instance continues to own the /// For in-memory preambles, PrecompiledPreamble instance continues to own the
/// MemoryBuffer with the Preamble after this method returns. The caller is /// MemoryBuffer with the Preamble after this method returns. The caller is
/// reponsible for making sure the PrecompiledPreamble instance outlives the /// responsible for making sure the PrecompiledPreamble instance outlives the
/// compiler run and the AST that will be using the PCH. /// compiler run and the AST that will be using the PCH.
void AddImplicitPreamble(CompilerInvocation &CI, void AddImplicitPreamble(CompilerInvocation &CI,
IntrusiveRefCntPtr<vfs::FileSystem> &VFS, IntrusiveRefCntPtr<vfs::FileSystem> &VFS,

View File

@ -277,7 +277,7 @@ public:
unsigned angledDirIdx, unsigned systemDirIdx, unsigned angledDirIdx, unsigned systemDirIdx,
bool noCurDirSearch) { bool noCurDirSearch) {
assert(angledDirIdx <= systemDirIdx && systemDirIdx <= dirs.size() && assert(angledDirIdx <= systemDirIdx && systemDirIdx <= dirs.size() &&
"Directory indicies are unordered"); "Directory indices are unordered");
SearchDirs = dirs; SearchDirs = dirs;
AngledDirIdx = angledDirIdx; AngledDirIdx = angledDirIdx;
SystemDirIdx = systemDirIdx; SystemDirIdx = systemDirIdx;

View File

@ -199,7 +199,7 @@ private:
llvm::DenseMap<const DirectoryEntry *, Module *> UmbrellaDirs; llvm::DenseMap<const DirectoryEntry *, Module *> UmbrellaDirs;
/// \brief A generation counter that is used to test whether modules of the /// \brief A generation counter that is used to test whether modules of the
/// same name may shadow or are illegal redefintions. /// same name may shadow or are illegal redefinitions.
/// ///
/// Modules from earlier scopes may shadow modules from later ones. /// Modules from earlier scopes may shadow modules from later ones.
/// Modules from the same scope may not have the same name. /// Modules from the same scope may not have the same name.

View File

@ -198,7 +198,7 @@ private:
/// the tokens just expanded through __VA_OPT__ processing. These (sub) /// the tokens just expanded through __VA_OPT__ processing. These (sub)
/// sequence of tokens are folded into one stringified token. /// sequence of tokens are folded into one stringified token.
/// ///
/// \param[in] VCtx - contains relevent contextual information about the /// \param[in] VCtx - contains relevant contextual information about the
/// state of the tokens around and including the __VA_OPT__ token, necessary /// state of the tokens around and including the __VA_OPT__ token, necessary
/// for stringification. /// for stringification.
void stringifyVAOPTContents(SmallVectorImpl<Token> &ReplacementToks, void stringifyVAOPTContents(SmallVectorImpl<Token> &ReplacementToks,

View File

@ -1097,7 +1097,7 @@ private:
/// \brief Whether this member function had an associated template /// \brief Whether this member function had an associated template
/// scope. When true, D is a template declaration. /// scope. When true, D is a template declaration.
/// othewise, it is a member function declaration. /// otherwise, it is a member function declaration.
bool TemplateScope; bool TemplateScope;
/// DefaultArgs - Contains the parameters of the function and /// DefaultArgs - Contains the parameters of the function and
@ -1153,7 +1153,7 @@ private:
/// \brief Whether this class had an associated template /// \brief Whether this class had an associated template
/// scope. When true, TagOrTemplate is a template declaration; /// scope. When true, TagOrTemplate is a template declaration;
/// othewise, it is a tag declaration. /// otherwise, it is a tag declaration.
bool TemplateScope : 1; bool TemplateScope : 1;
/// \brief Whether this class is an __interface. /// \brief Whether this class is an __interface.

View File

@ -322,7 +322,7 @@ private:
} }
/// Type tag information is stored immediately following the arguments, if /// Type tag information is stored immediately following the arguments, if
/// any, at the end of the object. They are mutually exlusive with /// any, at the end of the object. They are mutually exclusive with
/// availability slots. /// availability slots.
TypeTagForDatatypeData &getTypeTagForDatatypeDataSlot() { TypeTagForDatatypeData &getTypeTagForDatatypeDataSlot() {
return *reinterpret_cast<TypeTagForDatatypeData*>(getArgsBuffer()+NumArgs); return *reinterpret_cast<TypeTagForDatatypeData*>(getArgsBuffer()+NumArgs);

View File

@ -291,9 +291,9 @@ public:
/// \brief Simple predicate used by the default RankCandidate to /// \brief Simple predicate used by the default RankCandidate to
/// determine whether to return an edit distance of 0 or InvalidDistance. /// determine whether to return an edit distance of 0 or InvalidDistance.
/// This can be overrided by validators that only need to determine if a /// This can be overridden by validators that only need to determine if a
/// candidate is viable, without ranking potentially viable candidates. /// candidate is viable, without ranking potentially viable candidates.
/// Only ValidateCandidate or RankCandidate need to be overriden by a /// Only ValidateCandidate or RankCandidate need to be overridden by a
/// callback wishing to check the viability of correction candidates. /// callback wishing to check the viability of correction candidates.
/// The default predicate always returns true if the candidate is not a type /// The default predicate always returns true if the candidate is not a type
/// name or keyword, true for types if WantTypeSpecifiers is true, and true /// name or keyword, true for types if WantTypeSpecifiers is true, and true

View File

@ -367,7 +367,7 @@ public:
/// specified. /// specified.
/// @param [in] C The optional checker parameter that can be used to restrict /// @param [in] C The optional checker parameter that can be used to restrict
/// the search to the options of this particular checker (and its parents /// the search to the options of this particular checker (and its parents
/// dependening on search mode). /// depending on search mode).
/// @param [in] SearchInParents If set to true and the searched option was not /// @param [in] SearchInParents If set to true and the searched option was not
/// specified for the given checker the options for the parent packages will /// specified for the given checker the options for the parent packages will
/// be searched as well. The inner packages take precedence over the outer /// be searched as well. The inner packages take precedence over the outer
@ -385,7 +385,7 @@ public:
/// specified. /// specified.
/// @param [in] C The optional checker parameter that can be used to restrict /// @param [in] C The optional checker parameter that can be used to restrict
/// the search to the options of this particular checker (and its parents /// the search to the options of this particular checker (and its parents
/// dependening on search mode). /// depending on search mode).
/// @param [in] SearchInParents If set to true and the searched option was not /// @param [in] SearchInParents If set to true and the searched option was not
/// specified for the given checker the options for the parent packages will /// specified for the given checker the options for the parent packages will
/// be searched as well. The inner packages take precedence over the outer /// be searched as well. The inner packages take precedence over the outer
@ -402,7 +402,7 @@ public:
/// specified. /// specified.
/// @param [in] C The optional checker parameter that can be used to restrict /// @param [in] C The optional checker parameter that can be used to restrict
/// the search to the options of this particular checker (and its parents /// the search to the options of this particular checker (and its parents
/// dependening on search mode). /// depending on search mode).
/// @param [in] SearchInParents If set to true and the searched option was not /// @param [in] SearchInParents If set to true and the searched option was not
/// specified for the given checker the options for the parent packages will /// specified for the given checker the options for the parent packages will
/// be searched as well. The inner packages take precedence over the outer /// be searched as well. The inner packages take precedence over the outer
@ -419,7 +419,7 @@ public:
/// specified. /// specified.
/// @param [in] C The optional checker parameter that can be used to restrict /// @param [in] C The optional checker parameter that can be used to restrict
/// the search to the options of this particular checker (and its parents /// the search to the options of this particular checker (and its parents
/// dependening on search mode). /// depending on search mode).
/// @param [in] SearchInParents If set to true and the searched option was not /// @param [in] SearchInParents If set to true and the searched option was not
/// specified for the given checker the options for the parent packages will /// specified for the given checker the options for the parent packages will
/// be searched as well. The inner packages take precedence over the outer /// be searched as well. The inner packages take precedence over the outer

View File

@ -1,4 +1,4 @@
//===--- BugType.h - Bug Information Desciption ----------------*- C++ -*-===// //===--- BugType.h - Bug Information Description ---------------*- C++ -*-===//
// //
// The LLVM Compiler Infrastructure // The LLVM Compiler Infrastructure
// //

View File

@ -90,7 +90,7 @@ public:
/// @param FuncName The name of the function that will be matched. /// @param FuncName The name of the function that will be matched.
/// ///
/// @param RequiredArgs The number of arguments that is expected to match a /// @param RequiredArgs The number of arguments that is expected to match a
/// call. Omit this parameter to match every occurance of call with a given /// call. Omit this parameter to match every occurrence of call with a given
/// name regardless the number of arguments. /// name regardless the number of arguments.
CallDescription(StringRef FuncName, unsigned RequiredArgs = NoArgRequirement) CallDescription(StringRef FuncName, unsigned RequiredArgs = NoArgRequirement)
: FuncName(FuncName), RequiredArgs(RequiredArgs) {} : FuncName(FuncName), RequiredArgs(RequiredArgs) {}

View File

@ -241,7 +241,7 @@ protected:
/// the builder dies. /// the builder dies.
ExplodedNodeSet &Frontier; ExplodedNodeSet &Frontier;
/// Checkes if the results are ready. /// Checks if the results are ready.
virtual bool checkResults() { virtual bool checkResults() {
return Finalized; return Finalized;
} }

View File

@ -510,7 +510,7 @@ private:
/// \brief Value representing pointer-to-member. /// \brief Value representing pointer-to-member.
/// ///
/// This value is qualified as NonLoc because neither loading nor storing /// This value is qualified as NonLoc because neither loading nor storing
/// operations are aplied to it. Instead, the analyzer uses the L-value coming /// operations are applied to it. Instead, the analyzer uses the L-value coming
/// from pointer-to-member applied to an object. /// from pointer-to-member applied to an object.
/// This SVal is represented by a DeclaratorDecl which can be a member function /// This SVal is represented by a DeclaratorDecl which can be a member function
/// pointer or a member data pointer and a list of CXXBaseSpecifiers. This list /// pointer or a member data pointer and a list of CXXBaseSpecifiers. This list

View File

@ -72,7 +72,7 @@ public:
/// ///
/// Returns file name stored in this trie that is equivalent to 'FileName' /// Returns file name stored in this trie that is equivalent to 'FileName'
/// according to 'Comparator', if it can be uniquely identified. If there /// according to 'Comparator', if it can be uniquely identified. If there
/// are no matches an empty \c StringRef is returned. If there are ambigious /// are no matches an empty \c StringRef is returned. If there are ambiguous
/// matches, an empty \c StringRef is returned and a corresponding message /// matches, an empty \c StringRef is returned and a corresponding message
/// written to 'Error'. /// written to 'Error'.
StringRef findEquivalent(StringRef FileName, StringRef findEquivalent(StringRef FileName,

View File

@ -56,7 +56,7 @@ public:
class RefactoringActionRule : public RefactoringActionRuleBase { class RefactoringActionRule : public RefactoringActionRuleBase {
public: public:
/// Returns true when the rule has a source selection requirement that has /// Returns true when the rule has a source selection requirement that has
/// to be fullfilled before refactoring can be performed. /// to be fulfilled before refactoring can be performed.
virtual bool hasSelectionRequirement() = 0; virtual bool hasSelectionRequirement() = 0;
/// Traverses each refactoring option used by the rule and invokes the /// Traverses each refactoring option used by the rule and invokes the

View File

@ -26,8 +26,8 @@ class RefactoringResultConsumer {
public: public:
virtual ~RefactoringResultConsumer() {} virtual ~RefactoringResultConsumer() {}
/// Handles an initation or an invication error. An initiation error typically /// Handles an initiation or an invication error. An initiation error typically
/// has a \c DiagnosticError payload that describes why initation failed. /// has a \c DiagnosticError payload that describes why initiation failed.
virtual void handleError(llvm::Error Err) = 0; virtual void handleError(llvm::Error Err) = 0;
/// Handles the source replacements that are produced by a refactoring action. /// Handles the source replacements that are produced by a refactoring action.

View File

@ -82,7 +82,7 @@ private:
Expected<AtomicChanges> Expected<AtomicChanges>
createSourceReplacements(RefactoringRuleContext &Context) override; createSourceReplacements(RefactoringRuleContext &Context) override;
// A NamedDecl which indentifies the symbol being renamed. // A NamedDecl which identifies the symbol being renamed.
const NamedDecl *ND; const NamedDecl *ND;
// The new qualified name to change the symbol to. // The new qualified name to change the symbol to.
std::string NewQualifiedName; std::string NewQualifiedName;

View File

@ -21,7 +21,7 @@ namespace tooling {
/// A name of a symbol. /// A name of a symbol.
/// ///
/// Symbol's name can be composed of multiple strings. For example, Objective-C /// Symbol's name can be composed of multiple strings. For example, Objective-C
/// methods can contain multiple argument lables: /// methods can contain multiple argument labels:
/// ///
/// \code /// \code
/// - (void) myMethodNamePiece: (int)x anotherNamePieces:(int)y; /// - (void) myMethodNamePiece: (int)x anotherNamePieces:(int)y;

View File

@ -339,7 +339,7 @@ public:
/// ///
/// \param Action Tool action. /// \param Action Tool action.
/// ///
/// \returns 0 on success; 1 if any error occured; 2 if there is no error but /// \returns 0 on success; 1 if any error occurred; 2 if there is no error but
/// some files are skipped due to missing compile commands. /// some files are skipped due to missing compile commands.
int run(ToolAction *Action); int run(ToolAction *Action);

View File

@ -1101,7 +1101,7 @@ static bool MatchTwoAttributeLists(const AttrVec &Attrs1, const AttrVec &Attrs2,
for (unsigned i = 0, e = Attrs1.size(); i != e; i++) { for (unsigned i = 0, e = Attrs1.size(); i != e; i++) {
bool match = false; bool match = false;
for (unsigned j = 0, f = Attrs2.size(); j != f; j++) { for (unsigned j = 0, f = Attrs2.size(); j != f; j++) {
// Matching attribute kind only. Except for Availabilty attributes, // Matching attribute kind only. Except for Availability attributes,
// we are not getting into details of the attributes. For all practical purposes // we are not getting into details of the attributes. For all practical purposes
// this is sufficient. // this is sufficient.
if (Attrs1[i]->getKind() == Attrs2[j]->getKind()) { if (Attrs1[i]->getKind() == Attrs2[j]->getKind()) {

View File

@ -4463,7 +4463,7 @@ bool ASTContext::QIdProtocolsAdoptObjCObjectProtocols(QualType QT,
CollectInheritedProtocols(IDecl, InheritedProtocols); CollectInheritedProtocols(IDecl, InheritedProtocols);
if (InheritedProtocols.empty()) if (InheritedProtocols.empty())
return false; return false;
// Check that if every protocol in list of id<plist> conforms to a protcol // Check that if every protocol in list of id<plist> conforms to a protocol
// of IDecl's, then bridge casting is ok. // of IDecl's, then bridge casting is ok.
bool Conforms = false; bool Conforms = false;
for (auto *Proto : OPT->quals()) { for (auto *Proto : OPT->quals()) {
@ -6545,7 +6545,7 @@ void ASTContext::getObjCEncodingForTypeImpl(QualType T, std::string& S,
S += "{objc_class=}"; S += "{objc_class=}";
return; return;
} }
// TODO: Double check to make sure this intentially falls through. // TODO: Double check to make sure this intentionally falls through.
LLVM_FALLTHROUGH; LLVM_FALLTHROUGH;
} }
@ -6584,7 +6584,7 @@ void ASTContext::getObjCEncodingForTypeImpl(QualType T, std::string& S,
if (OPT->isObjCClassType() || OPT->isObjCQualifiedClassType()) { if (OPT->isObjCClassType() || OPT->isObjCQualifiedClassType()) {
// FIXME: Consider if we need to output qualifiers for 'Class<p>'. // FIXME: Consider if we need to output qualifiers for 'Class<p>'.
// Since this is a binary compatibility issue, need to consult with runtime // Since this is a binary compatibility issue, need to consult with runtime
// folks. Fortunately, this is a *very* obsure construct. // folks. Fortunately, this is a *very* obscure construct.
S += '#'; S += '#';
return; return;
} }

View File

@ -1765,7 +1765,7 @@ void CXXRecordDecl::completeDefinition(CXXFinalOverriderMap *FinalOverriders) {
SOEnd = M->second.end(); SOEnd = M->second.end();
SO != SOEnd && !Done; ++SO) { SO != SOEnd && !Done; ++SO) {
assert(SO->second.size() > 0 && assert(SO->second.size() > 0 &&
"All virtual functions have overridding virtual functions"); "All virtual functions have overriding virtual functions");
// C++ [class.abstract]p4: // C++ [class.abstract]p4:
// A class is abstract if it contains or inherits at least one // A class is abstract if it contains or inherits at least one
@ -2365,7 +2365,7 @@ bool CXXConstructorDecl::isSpecializationCopyingObject() const {
ASTContext &Context = getASTContext(); ASTContext &Context = getASTContext();
CanQualType ParamType = Context.getCanonicalType(Param->getType()); CanQualType ParamType = Context.getCanonicalType(Param->getType());
// Is it the same as our our class type? // Is it the same as our class type?
CanQualType ClassTy CanQualType ClassTy
= Context.getCanonicalType(Context.getTagDeclType(getParent())); = Context.getCanonicalType(Context.getTagDeclType(getParent()));
if (ParamType.getUnqualifiedType() != ClassTy) if (ParamType.getUnqualifiedType() != ClassTy)

View File

@ -1138,8 +1138,8 @@ static void CollectOverriddenMethodsRecurse(const ObjCContainerDecl *Container,
if (!Container) if (!Container)
return; return;
// In categories look for overriden methods from protocols. A method from // In categories look for overridden methods from protocols. A method from
// category is not "overriden" since it is considered as the "same" method // category is not "overridden" since it is considered as the "same" method
// (same USR) as the one from the interface. // (same USR) as the one from the interface.
if (const ObjCCategoryDecl * if (const ObjCCategoryDecl *
Category = dyn_cast<ObjCCategoryDecl>(Container)) { Category = dyn_cast<ObjCCategoryDecl>(Container)) {

View File

@ -1009,7 +1009,7 @@ void MicrosoftCXXNameMangler::mangleNestedName(const NamedDecl *ND) {
if (const auto *ND = dyn_cast<NamedDecl>(MC)) if (const auto *ND = dyn_cast<NamedDecl>(MC))
mangleUnqualifiedName(ND); mangleUnqualifiedName(ND);
// MS ABI and Itanium manglings are in inverted scopes. In the case of a // MS ABI and Itanium manglings are in inverted scopes. In the case of a
// RecordDecl, mangle the entire scope hierachy at this point rather than // RecordDecl, mangle the entire scope hierarchy at this point rather than
// just the unqualified name to get the ordering correct. // just the unqualified name to get the ordering correct.
if (const auto *RD = dyn_cast<RecordDecl>(DC)) if (const auto *RD = dyn_cast<RecordDecl>(DC))
mangleName(RD); mangleName(RD);

View File

@ -56,7 +56,7 @@ static StmtClassNameTable &getStmtInfoTableEntry(Stmt::StmtClass E) {
if (Initialized) if (Initialized)
return StmtClassInfo[E]; return StmtClassInfo[E];
// Intialize the table on the first use. // Initialize the table on the first use.
Initialized = true; Initialized = true;
#define ABSTRACT_STMT(STMT) #define ABSTRACT_STMT(STMT)
#define STMT(CLASS, PARENT) \ #define STMT(CLASS, PARENT) \

View File

@ -2995,7 +2995,7 @@ void VFTableBuilder::AddMethods(BaseSubobject Base, unsigned BaseDepth,
} }
// In case we need a return adjustment, we'll add a new slot for // In case we need a return adjustment, we'll add a new slot for
// the overrider. Mark the overriden method as shadowed by the new slot. // the overrider. Mark the overridden method as shadowed by the new slot.
OverriddenMethodInfo.Shadowed = true; OverriddenMethodInfo.Shadowed = true;
// Force a special name mangling for a return-adjusting thunk // Force a special name mangling for a return-adjusting thunk

View File

@ -524,7 +524,7 @@ void Parser::addExpressionCompletions() {
} }
} }
/// \brief Parse an <Expresssion> /// \brief Parse an <Expression>
bool Parser::parseExpressionImpl(VariantValue *Value) { bool Parser::parseExpressionImpl(VariantValue *Value) {
switch (Tokenizer->nextTokenKind()) { switch (Tokenizer->nextTokenKind()) {
case TokenInfo::TK_Literal: case TokenInfo::TK_Literal:

View File

@ -381,7 +381,7 @@ void RecursiveCloneTypeIIHashConstraint::constrain(
for (unsigned i = 0; i < StmtsByHash.size() - 1; ++i) { for (unsigned i = 0; i < StmtsByHash.size() - 1; ++i) {
const auto Current = StmtsByHash[i]; const auto Current = StmtsByHash[i];
// It's likely that we just found an sequence of StmtSequences that // It's likely that we just found a sequence of StmtSequences that
// represent a CloneGroup, so we create a new group and start checking and // represent a CloneGroup, so we create a new group and start checking and
// adding the StmtSequences in this sequence. // adding the StmtSequences in this sequence.
CloneDetector::CloneGroup NewGroup; CloneDetector::CloneGroup NewGroup;

View File

@ -817,7 +817,7 @@ void SExprBuilder::enterCFG(CFG *Cfg, const NamedDecl *D,
} }
void SExprBuilder::enterCFGBlock(const CFGBlock *B) { void SExprBuilder::enterCFGBlock(const CFGBlock *B) {
// Intialize TIL basic block and add it to the CFG. // Initialize TIL basic block and add it to the CFG.
CurrentBB = lookupBlock(B); CurrentBB = lookupBlock(B);
CurrentBB->reservePredecessors(B->pred_size()); CurrentBB->reservePredecessors(B->pred_size());
Scfg->add(CurrentBB); Scfg->add(CurrentBB);
@ -892,7 +892,7 @@ void SExprBuilder::exitCFGBlockBody(const CFGBlock *B) {
til::BasicBlock *BB1 = *It ? lookupBlock(*It) : nullptr; til::BasicBlock *BB1 = *It ? lookupBlock(*It) : nullptr;
++It; ++It;
til::BasicBlock *BB2 = *It ? lookupBlock(*It) : nullptr; til::BasicBlock *BB2 = *It ? lookupBlock(*It) : nullptr;
// FIXME: make sure these arent' critical edges. // FIXME: make sure these aren't critical edges.
auto *Tm = new (Arena) til::Branch(C, BB1, BB2); auto *Tm = new (Arena) til::Branch(C, BB1, BB2);
CurrentBB->setTerminator(Tm); CurrentBB->setTerminator(Tm);
} }

View File

@ -470,7 +470,7 @@ DiagnosticIDs::getDiagnosticSeverity(unsigned DiagID, SourceLocation Loc,
Result = diag::Severity::Error; Result = diag::Severity::Error;
} }
// If -Wfatal-errors is enabled, map errors to fatal unless explicity // If -Wfatal-errors is enabled, map errors to fatal unless explicitly
// disabled. // disabled.
if (Result == diag::Severity::Error) { if (Result == diag::Severity::Error) {
if (State->ErrorsAsFatal && !Mapping.hasNoErrorAsFatal()) if (State->ErrorsAsFatal && !Mapping.hasNoErrorAsFatal())

View File

@ -1887,7 +1887,7 @@ void SourceManager::associateFileChunkWithMacroArgExp(
// 0 -> SourceLocation() // 0 -> SourceLocation()
// 100 -> Expanded loc #1 // 100 -> Expanded loc #1
// 110 -> SourceLocation() // 110 -> SourceLocation()
// and we found a new macro FileID that lexed from offet 105 with length 3, // and we found a new macro FileID that lexed from offset 105 with length 3,
// the new map will be: // the new map will be:
// 0 -> SourceLocation() // 0 -> SourceLocation()
// 100 -> Expanded loc #1 // 100 -> Expanded loc #1

View File

@ -96,7 +96,7 @@ void PPCTargetInfo::getTargetDefines(const LangOptions &Opts,
Builder.defineMacro("_CALL_ELF", "2"); Builder.defineMacro("_CALL_ELF", "2");
// This typically is only for a new enough linker (bfd >= 2.16.2 or gold), but // This typically is only for a new enough linker (bfd >= 2.16.2 or gold), but
// our suppport post-dates this and it should work on all 64-bit ppc linux // our support post-dates this and it should work on all 64-bit ppc linux
// platforms. It is guaranteed to work on all elfv2 platforms. // platforms. It is guaranteed to work on all elfv2 platforms.
if (getTriple().getOS() == llvm::Triple::Linux && PointerWidth == 64) if (getTriple().getOS() == llvm::Triple::Linux && PointerWidth == 64)
Builder.defineMacro("_CALL_LINUX", "1"); Builder.defineMacro("_CALL_LINUX", "1");

View File

@ -1533,7 +1533,7 @@ bool X86TargetInfo::validateAsmConstraint(
case 'y': // Any MMX register. case 'y': // Any MMX register.
case 'v': // Any {X,Y,Z}MM register (Arch & context dependent) case 'v': // Any {X,Y,Z}MM register (Arch & context dependent)
case 'x': // Any SSE register. case 'x': // Any SSE register.
case 'k': // Any AVX512 mask register (same as Yk, additionaly allows k0 case 'k': // Any AVX512 mask register (same as Yk, additionally allows k0
// for intermideate k reg operations). // for intermideate k reg operations).
case 'Q': // Any register accessible as [r]h: a, b, c, and d. case 'Q': // Any register accessible as [r]h: a, b, c, and d.
case 'R': // "Legacy" registers: ax, bx, cx, dx, di, si, sp, bp. case 'R': // "Legacy" registers: ax, bx, cx, dx, di, si, sp, bp.

View File

@ -821,7 +821,7 @@ static PassBuilder::OptimizationLevel mapToLevel(const CodeGenOptions &Opts) {
case 2: case 2:
switch (Opts.OptimizeSize) { switch (Opts.OptimizeSize) {
default: default:
llvm_unreachable("Invalide optimization level for size!"); llvm_unreachable("Invalid optimization level for size!");
case 0: case 0:
return PassBuilder::O2; return PassBuilder::O2;

View File

@ -66,7 +66,7 @@ static llvm::Constant *buildDisposeHelper(CodeGenModule &CGM,
/// buildBlockDescriptor - Build the block descriptor meta-data for a block. /// buildBlockDescriptor - Build the block descriptor meta-data for a block.
/// buildBlockDescriptor is accessed from 5th field of the Block_literal /// buildBlockDescriptor is accessed from 5th field of the Block_literal
/// meta-data and contains stationary information about the block literal. /// meta-data and contains stationary information about the block literal.
/// Its definition will have 4 (or optinally 6) words. /// Its definition will have 4 (or optionally 6) words.
/// \code /// \code
/// struct Block_descriptor { /// struct Block_descriptor {
/// unsigned long reserved; /// unsigned long reserved;
@ -330,7 +330,7 @@ static void initializeForBlockHeader(CodeGenModule &CGM, CGBlockInfo &info,
info.BlockSize = CharUnits::fromQuantity(Offset); info.BlockSize = CharUnits::fromQuantity(Offset);
} else { } else {
// The header is basically 'struct { void *; int; int; void *; void *; }'. // The header is basically 'struct { void *; int; int; void *; void *; }'.
// Assert that that struct is packed. // Assert that the struct is packed.
assert(CGM.getIntSize() <= CGM.getPointerSize()); assert(CGM.getIntSize() <= CGM.getPointerSize());
assert(CGM.getIntAlign() <= CGM.getPointerAlign()); assert(CGM.getIntAlign() <= CGM.getPointerAlign());
assert((2 * CGM.getIntSize()).isMultipleOf(CGM.getPointerAlign())); assert((2 * CGM.getIntSize()).isMultipleOf(CGM.getPointerAlign()));
@ -887,7 +887,7 @@ llvm::Value *CodeGenFunction::EmitBlockLiteral(const CGBlockInfo &blockInfo) {
const CGBlockInfo::Capture &enclosingCapture = const CGBlockInfo::Capture &enclosingCapture =
BlockInfo->getCapture(variable); BlockInfo->getCapture(variable);
// This is a [[type]]*, except that a byref entry wil just be an i8**. // This is a [[type]]*, except that a byref entry will just be an i8**.
src = Builder.CreateStructGEP(LoadBlockStruct(), src = Builder.CreateStructGEP(LoadBlockStruct(),
enclosingCapture.getIndex(), enclosingCapture.getIndex(),
enclosingCapture.getOffset(), enclosingCapture.getOffset(),

View File

@ -384,7 +384,7 @@ EncompassingIntegerType(ArrayRef<struct WidthAndSignedness> Types) {
} }
// The encompassing type must have a width greater than or equal to the width // The encompassing type must have a width greater than or equal to the width
// of the specified types. Aditionally, if the encompassing type is signed, // of the specified types. Additionally, if the encompassing type is signed,
// its width must be strictly greater than the width of any unsigned types // its width must be strictly greater than the width of any unsigned types
// given. // given.
unsigned Width = 0; unsigned Width = 0;
@ -478,7 +478,7 @@ CodeGenFunction::emitBuiltinObjectSize(const Expr *E, unsigned Type,
// LLVM only supports 0 and 2, make sure that we pass along that as a boolean. // LLVM only supports 0 and 2, make sure that we pass along that as a boolean.
Value *Min = Builder.getInt1((Type & 2) != 0); Value *Min = Builder.getInt1((Type & 2) != 0);
// For GCC compatability, __builtin_object_size treat NULL as unknown size. // For GCC compatibility, __builtin_object_size treat NULL as unknown size.
Value *NullIsUnknown = Builder.getTrue(); Value *NullIsUnknown = Builder.getTrue();
return Builder.CreateCall(F, {Ptr, Min, NullIsUnknown}); return Builder.CreateCall(F, {Ptr, Min, NullIsUnknown});
} }
@ -2096,7 +2096,7 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
case Builtin::BI__sync_synchronize: { case Builtin::BI__sync_synchronize: {
// We assume this is supposed to correspond to a C++0x-style // We assume this is supposed to correspond to a C++0x-style
// sequentially-consistent fence (i.e. this is only usable for // sequentially-consistent fence (i.e. this is only usable for
// synchonization, not device I/O or anything like that). This intrinsic // synchronization, not device I/O or anything like that). This intrinsic
// is really badly designed in the sense that in theory, there isn't // is really badly designed in the sense that in theory, there isn't
// any way to safely use it... but in practice, it mostly works // any way to safely use it... but in practice, it mostly works
// to use it with non-atomic loads and stores to get acquire/release // to use it with non-atomic loads and stores to get acquire/release
@ -3319,7 +3319,7 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
llvm::Triple::getArchTypePrefix(getTarget().getTriple().getArch()); llvm::Triple::getArchTypePrefix(getTarget().getTriple().getArch());
if (!Prefix.empty()) { if (!Prefix.empty()) {
IntrinsicID = Intrinsic::getIntrinsicForGCCBuiltin(Prefix.data(), Name); IntrinsicID = Intrinsic::getIntrinsicForGCCBuiltin(Prefix.data(), Name);
// NOTE we dont need to perform a compatibility flag check here since the // NOTE we don't need to perform a compatibility flag check here since the
// intrinsics are declared in Builtins*.def via LANGBUILTIN which filter the // intrinsics are declared in Builtins*.def via LANGBUILTIN which filter the
// MS builtins via ALL_MS_LANGUAGES and are filtered earlier. // MS builtins via ALL_MS_LANGUAGES and are filtered earlier.
if (IntrinsicID == Intrinsic::not_intrinsic) if (IntrinsicID == Intrinsic::not_intrinsic)

View File

@ -817,7 +817,7 @@ static SmallString<256> getUniqueTagTypeName(const TagType *Ty,
return FullName; return FullName;
} }
/// \return the approproate DWARF tag for a composite type. /// \return the appropriate DWARF tag for a composite type.
static llvm::dwarf::Tag getTagForRecord(const RecordDecl *RD) { static llvm::dwarf::Tag getTagForRecord(const RecordDecl *RD) {
llvm::dwarf::Tag Tag; llvm::dwarf::Tag Tag;
if (RD->isStruct() || RD->isInterface()) if (RD->isStruct() || RD->isInterface())
@ -2106,7 +2106,7 @@ CGDebugInfo::getOrCreateModuleRef(ExternalASTSource::ASTSourceDescriptor Mod,
llvm::raw_svector_ostream OS(ConfigMacros); llvm::raw_svector_ostream OS(ConfigMacros);
const auto &PPOpts = CGM.getPreprocessorOpts(); const auto &PPOpts = CGM.getPreprocessorOpts();
unsigned I = 0; unsigned I = 0;
// Translate the macro definitions back into a commmand line. // Translate the macro definitions back into a command line.
for (auto &M : PPOpts.Macros) { for (auto &M : PPOpts.Macros) {
if (++I > 1) if (++I > 1)
OS << " "; OS << " ";
@ -2871,7 +2871,7 @@ llvm::DICompositeType *CGDebugInfo::CreateLimitedType(const RecordType *Ty) {
case llvm::dwarf::DW_TAG_structure_type: case llvm::dwarf::DW_TAG_structure_type:
case llvm::dwarf::DW_TAG_union_type: case llvm::dwarf::DW_TAG_union_type:
case llvm::dwarf::DW_TAG_class_type: case llvm::dwarf::DW_TAG_class_type:
// Immediatley resolve to a distinct node. // Immediately resolve to a distinct node.
RealDecl = RealDecl =
llvm::MDNode::replaceWithDistinct(llvm::TempDICompositeType(RealDecl)); llvm::MDNode::replaceWithDistinct(llvm::TempDICompositeType(RealDecl));
break; break;
@ -3587,7 +3587,7 @@ llvm::DILocalVariable *CGDebugInfo::EmitDeclare(const VarDecl *VD,
const RecordDecl *RD = RT->getDecl(); const RecordDecl *RD = RT->getDecl();
if (RD->isUnion() && RD->isAnonymousStructOrUnion()) { if (RD->isUnion() && RD->isAnonymousStructOrUnion()) {
// GDB has trouble finding local variables in anonymous unions, so we emit // GDB has trouble finding local variables in anonymous unions, so we emit
// artifical local variables for each of the members. // artificial local variables for each of the members.
// //
// FIXME: Remove this code as soon as GDB supports this. // FIXME: Remove this code as soon as GDB supports this.
// The debug info verifier in LLVM operates based on the assumption that a // The debug info verifier in LLVM operates based on the assumption that a

View File

@ -746,7 +746,7 @@ void AggExprEmitter::VisitCastExpr(CastExpr *E) {
if (isToAtomic) { if (isToAtomic) {
AggValueSlot valueDest = Dest; AggValueSlot valueDest = Dest;
if (!valueDest.isIgnored() && CGF.CGM.isPaddedAtomicType(atomicType)) { if (!valueDest.isIgnored() && CGF.CGM.isPaddedAtomicType(atomicType)) {
// Zero-initialize. (Strictly speaking, we only need to intialize // Zero-initialize. (Strictly speaking, we only need to initialize
// the padding at the end, but this is simpler.) // the padding at the end, but this is simpler.)
if (!Dest.isZeroed()) if (!Dest.isZeroed())
CGF.EmitNullInitialization(Dest.getAddress(), atomicType); CGF.EmitNullInitialization(Dest.getAddress(), atomicType);

View File

@ -1056,7 +1056,7 @@ ComplexPairTy ComplexExprEmitter::VisitInitListExpr(InitListExpr *E) {
return Visit(E->getInit(0)); return Visit(E->getInit(0));
} }
// Empty init list intializes to null // Empty init list initializes to null
assert(E->getNumInits() == 0 && "Unexpected number of inits"); assert(E->getNumInits() == 0 && "Unexpected number of inits");
QualType Ty = E->getType()->castAs<ComplexType>()->getElementType(); QualType Ty = E->getType()->castAs<ComplexType>()->getElementType();
llvm::Type* LTy = CGF.ConvertType(Ty); llvm::Type* LTy = CGF.ConvertType(Ty);

View File

@ -6948,7 +6948,7 @@ llvm::Value *CGObjCNonFragileABIMac::EmitIvarOffset(
// This could be 32bit int or 64bit integer depending on the architecture. // This could be 32bit int or 64bit integer depending on the architecture.
// Cast it to 64bit integer value, if it is a 32bit integer ivar offset value // Cast it to 64bit integer value, if it is a 32bit integer ivar offset value
// as this is what caller always expectes. // as this is what caller always expects.
if (ObjCTypes.IvarOffsetVarTy == ObjCTypes.IntTy) if (ObjCTypes.IvarOffsetVarTy == ObjCTypes.IntTy)
IvarOffsetValue = CGF.Builder.CreateIntCast( IvarOffsetValue = CGF.Builder.CreateIntCast(
IvarOffsetValue, ObjCTypes.LongTy, true, "ivar.conv"); IvarOffsetValue, ObjCTypes.LongTy, true, "ivar.conv");

View File

@ -64,11 +64,11 @@ public:
llvm::PointerType *getSamplerType(const Type *T); llvm::PointerType *getSamplerType(const Type *T);
// \brief Returnes a value which indicates the size in bytes of the pipe // \brief Returns a value which indicates the size in bytes of the pipe
// element. // element.
virtual llvm::Value *getPipeElemSize(const Expr *PipeArg); virtual llvm::Value *getPipeElemSize(const Expr *PipeArg);
// \brief Returnes a value which indicates the alignment in bytes of the pipe // \brief Returns a value which indicates the alignment in bytes of the pipe
// element. // element.
virtual llvm::Value *getPipeElemAlign(const Expr *PipeArg); virtual llvm::Value *getPipeElemAlign(const Expr *PipeArg);

View File

@ -3808,7 +3808,7 @@ void CGOpenMPRuntime::createOffloadEntriesAndInfoMetadata() {
// Right now we only generate metadata for function that contain target // Right now we only generate metadata for function that contain target
// regions. // regions.
// If we do not have entries, we dont need to do anything. // If we do not have entries, we don't need to do anything.
if (OffloadEntriesInfoManager.empty()) if (OffloadEntriesInfoManager.empty())
return; return;
@ -4942,7 +4942,7 @@ void CGOpenMPRuntime::emitTaskCall(CodeGenFunction &CGF, SourceLocation Loc,
CGF.VoidPtrTy); CGF.VoidPtrTy);
} }
// NOTE: routine and part_id fields are intialized by __kmpc_omp_task_alloc() // NOTE: routine and part_id fields are initialized by __kmpc_omp_task_alloc()
// libcall. // libcall.
// Build kmp_int32 __kmpc_omp_task_with_deps(ident_t *, kmp_int32 gtid, // Build kmp_int32 __kmpc_omp_task_with_deps(ident_t *, kmp_int32 gtid,
// kmp_task_t *new_task, kmp_int32 ndeps, kmp_depend_info_t *dep_list, // kmp_task_t *new_task, kmp_int32 ndeps, kmp_depend_info_t *dep_list,
@ -5042,7 +5042,7 @@ void CGOpenMPRuntime::emitTaskLoopCall(CodeGenFunction &CGF, SourceLocation Loc,
return; return;
TaskResultTy Result = TaskResultTy Result =
emitTaskInit(CGF, Loc, D, TaskFunction, SharedsTy, Shareds, Data); emitTaskInit(CGF, Loc, D, TaskFunction, SharedsTy, Shareds, Data);
// NOTE: routine and part_id fields are intialized by __kmpc_omp_task_alloc() // NOTE: routine and part_id fields are initialized by __kmpc_omp_task_alloc()
// libcall. // libcall.
// Call to void __kmpc_taskloop(ident_t *loc, int gtid, kmp_task_t *task, int // Call to void __kmpc_taskloop(ident_t *loc, int gtid, kmp_task_t *task, int
// if_val, kmp_uint64 *lb, kmp_uint64 *ub, kmp_int64 st, int nogroup, int // if_val, kmp_uint64 *lb, kmp_uint64 *ub, kmp_int64 st, int nogroup, int
@ -6605,7 +6605,7 @@ public:
bool IsFirstComponentList, bool IsImplicit) const { bool IsFirstComponentList, bool IsImplicit) const {
// The following summarizes what has to be generated for each map and the // The following summarizes what has to be generated for each map and the
// types bellow. The generated information is expressed in this order: // types below. The generated information is expressed in this order:
// base pointer, section pointer, size, flags // base pointer, section pointer, size, flags
// (to add to the ones that come from the map type and modifier). // (to add to the ones that come from the map type and modifier).
// //

View File

@ -133,7 +133,7 @@ private:
/// Base declarations for the reduction items. /// Base declarations for the reduction items.
SmallVector<const VarDecl *, 4> BaseDecls; SmallVector<const VarDecl *, 4> BaseDecls;
/// Emits lvalue for shared expresion. /// Emits lvalue for shared expression.
LValue emitSharedLValue(CodeGenFunction &CGF, const Expr *E); LValue emitSharedLValue(CodeGenFunction &CGF, const Expr *E);
/// Emits upper bound for shared expression (if array section). /// Emits upper bound for shared expression (if array section).
LValue emitSharedLValueUB(CodeGenFunction &CGF, const Expr *E); LValue emitSharedLValueUB(CodeGenFunction &CGF, const Expr *E);
@ -1463,7 +1463,7 @@ public:
/// Translates the native parameter of outlined function if this is required /// Translates the native parameter of outlined function if this is required
/// for target. /// for target.
/// \param FD Field decl from captured record for the paramater. /// \param FD Field decl from captured record for the parameter.
/// \param NativeParam Parameter itself. /// \param NativeParam Parameter itself.
virtual const VarDecl *translateParameter(const FieldDecl *FD, virtual const VarDecl *translateParameter(const FieldDecl *FD,
const VarDecl *NativeParam) const { const VarDecl *NativeParam) const {
@ -2049,7 +2049,7 @@ public:
/// Translates the native parameter of outlined function if this is required /// Translates the native parameter of outlined function if this is required
/// for target. /// for target.
/// \param FD Field decl from captured record for the paramater. /// \param FD Field decl from captured record for the parameter.
/// \param NativeParam Parameter itself. /// \param NativeParam Parameter itself.
const VarDecl *translateParameter(const FieldDecl *FD, const VarDecl *translateParameter(const FieldDecl *FD,
const VarDecl *NativeParam) const override; const VarDecl *NativeParam) const override;

View File

@ -278,7 +278,7 @@ public:
/// Translates the native parameter of outlined function if this is required /// Translates the native parameter of outlined function if this is required
/// for target. /// for target.
/// \param FD Field decl from captured record for the paramater. /// \param FD Field decl from captured record for the parameter.
/// \param NativeParam Parameter itself. /// \param NativeParam Parameter itself.
const VarDecl *translateParameter(const FieldDecl *FD, const VarDecl *translateParameter(const FieldDecl *FD,
const VarDecl *NativeParam) const override; const VarDecl *NativeParam) const override;

View File

@ -62,7 +62,7 @@ namespace {
/// because LLVM reads from the complete type it can generate incorrect code /// because LLVM reads from the complete type it can generate incorrect code
/// if we do not clip the tail padding off of the bitfield in the complete /// if we do not clip the tail padding off of the bitfield in the complete
/// layout. This introduces a somewhat awkward extra unnecessary clip stage. /// layout. This introduces a somewhat awkward extra unnecessary clip stage.
/// The location of the clip is stored internally as a sentinal of type /// The location of the clip is stored internally as a sentinel of type
/// SCISSOR. If LLVM were updated to read base types (which it probably /// SCISSOR. If LLVM were updated to read base types (which it probably
/// should because locations of things such as VBases are bogus in the llvm /// should because locations of things such as VBases are bogus in the llvm
/// type anyway) then we could eliminate the SCISSOR. /// type anyway) then we could eliminate the SCISSOR.
@ -74,7 +74,7 @@ namespace {
struct CGRecordLowering { struct CGRecordLowering {
// MemberInfo is a helper structure that contains information about a record // MemberInfo is a helper structure that contains information about a record
// member. In additional to the standard member types, there exists a // member. In additional to the standard member types, there exists a
// sentinal member type that ensures correct rounding. // sentinel member type that ensures correct rounding.
struct MemberInfo { struct MemberInfo {
CharUnits Offset; CharUnits Offset;
enum InfoKind { VFPtr, VBPtr, Field, Base, VBase, Scissor } Kind; enum InfoKind { VFPtr, VBPtr, Field, Base, VBase, Scissor } Kind;
@ -186,7 +186,7 @@ struct CGRecordLowering {
void clipTailPadding(); void clipTailPadding();
/// \brief Determines if we need a packed llvm struct. /// \brief Determines if we need a packed llvm struct.
void determinePacked(bool NVBaseType); void determinePacked(bool NVBaseType);
/// \brief Inserts padding everwhere it's needed. /// \brief Inserts padding everywhere it's needed.
void insertPadding(); void insertPadding();
/// \brief Fills out the structures that are ultimately consumed. /// \brief Fills out the structures that are ultimately consumed.
void fillOutputFields(); void fillOutputFields();
@ -629,7 +629,7 @@ void CGRecordLowering::determinePacked(bool NVBaseType) {
// non-virtual sub-object and an unpacked complete object or vise versa. // non-virtual sub-object and an unpacked complete object or vise versa.
if (NVSize % NVAlignment) if (NVSize % NVAlignment)
Packed = true; Packed = true;
// Update the alignment of the sentinal. // Update the alignment of the sentinel.
if (!Packed) if (!Packed)
Members.back().Data = getIntNType(Context.toBits(Alignment)); Members.back().Data = getIntNType(Context.toBits(Alignment));
} }

View File

@ -1037,7 +1037,7 @@ void CodeGenFunction::EmitReturnStmt(const ReturnStmt &S) {
Builder.ClearInsertionPoint(); Builder.ClearInsertionPoint();
} }
// Emit the result value, even if unused, to evalute the side effects. // Emit the result value, even if unused, to evaluate the side effects.
const Expr *RV = S.getRetValue(); const Expr *RV = S.getRetValue();
// Treat block literals in a return expression as if they appeared // Treat block literals in a return expression as if they appeared

View File

@ -4461,7 +4461,7 @@ void CodeGenFunction::EmitOMPUseDevicePtrClause(
EmitDecl(*PvtVD); EmitDecl(*PvtVD);
// The initialization variables reached its purpose in the emission // The initialization variables reached its purpose in the emission
// ofthe previous declaration, so we don't need it anymore. // of the previous declaration, so we don't need it anymore.
LocalDeclMap.erase(InitVD); LocalDeclMap.erase(InitVD);
// Return the address of the private variable. // Return the address of the private variable.
@ -4503,7 +4503,7 @@ void CodeGenFunction::EmitOMPTargetDataDirective(
CGF.EmitStmt(S.getInnermostCapturedStmt()->getCapturedStmt()); CGF.EmitStmt(S.getInnermostCapturedStmt()->getCapturedStmt());
}; };
// Codegen that selects wheather to generate the privatization code or not. // Codegen that selects whether to generate the privatization code or not.
auto &&PrivCodeGen = [&S, &Info, &PrivatizeDevicePointers, auto &&PrivCodeGen = [&S, &Info, &PrivatizeDevicePointers,
&InnermostCodeGen](CodeGenFunction &CGF, &InnermostCodeGen](CodeGenFunction &CGF,
PrePostActionTy &Action) { PrePostActionTy &Action) {

View File

@ -870,7 +870,7 @@ CodeGenModule::getVTableLinkage(const CXXRecordDecl *RD) {
llvm_unreachable("Invalid TemplateSpecializationKind!"); llvm_unreachable("Invalid TemplateSpecializationKind!");
} }
/// This is a callback from Sema to tell us that that a particular vtable is /// This is a callback from Sema to tell us that a particular vtable is
/// required to be emitted in this translation unit. /// required to be emitted in this translation unit.
/// ///
/// This is only called for vtables that _must_ be emitted (mainly due to key /// This is only called for vtables that _must_ be emitted (mainly due to key

View File

@ -1453,7 +1453,7 @@ private:
/// True if we need emit the life-time markers. /// True if we need emit the life-time markers.
const bool ShouldEmitLifetimeMarkers; const bool ShouldEmitLifetimeMarkers;
/// Add OpenCL kernel arg metadata and the kernel attribute meatadata to /// Add OpenCL kernel arg metadata and the kernel attribute metadata to
/// the function metadata. /// the function metadata.
void EmitOpenCLKernelMetadata(const FunctionDecl *FD, void EmitOpenCLKernelMetadata(const FunctionDecl *FD,
llvm::Function *Fn); llvm::Function *Fn);
@ -1717,7 +1717,7 @@ public:
void EmitInitializerForField(FieldDecl *Field, LValue LHS, Expr *Init); void EmitInitializerForField(FieldDecl *Field, LValue LHS, Expr *Init);
/// Struct with all informations about dynamic [sub]class needed to set vptr. /// Struct with all information about dynamic [sub]class needed to set vptr.
struct VPtr { struct VPtr {
BaseSubobject Base; BaseSubobject Base;
const CXXRecordDecl *NearestVBase; const CXXRecordDecl *NearestVBase;

View File

@ -2675,7 +2675,7 @@ bool CodeGenModule::isTypeConstant(QualType Ty, bool ExcludeCtor) {
/// If D is non-null, it specifies a decl that correspond to this. This is used /// If D is non-null, it specifies a decl that correspond to this. This is used
/// to set the attributes on the global when it is first created. /// to set the attributes on the global when it is first created.
/// ///
/// If IsForDefinition is true, it is guranteed that an actual global with /// If IsForDefinition is true, it is guaranteed that an actual global with
/// type Ty will be returned, not conversion of a variable with the same /// type Ty will be returned, not conversion of a variable with the same
/// mangled name but some other type. /// mangled name but some other type.
llvm::Constant * llvm::Constant *
@ -2934,7 +2934,7 @@ CodeGenModule::CreateOrReplaceCXXRuntimeVariable(StringRef Name,
/// GetAddrOfGlobalVar - Return the llvm::Constant for the address of the /// GetAddrOfGlobalVar - Return the llvm::Constant for the address of the
/// given global variable. If Ty is non-null and if the global doesn't exist, /// given global variable. If Ty is non-null and if the global doesn't exist,
/// then it will be created with the specified type instead of whatever the /// then it will be created with the specified type instead of whatever the
/// normal requested type would be. If IsForDefinition is true, it is guranteed /// normal requested type would be. If IsForDefinition is true, it is guaranteed
/// that an actual global with type Ty will be returned, not conversion of a /// that an actual global with type Ty will be returned, not conversion of a
/// variable with the same mangled name but some other type. /// variable with the same mangled name but some other type.
llvm::Constant *CodeGenModule::GetAddrOfGlobalVar(const VarDecl *D, llvm::Constant *CodeGenModule::GetAddrOfGlobalVar(const VarDecl *D,
@ -3330,7 +3330,7 @@ static bool isVarDeclStrongDefinition(const ASTContext &Context,
return true; return true;
// A variable cannot be both common and exist in a section. // A variable cannot be both common and exist in a section.
// We dont try to determine which is the right section in the front-end. // We don't try to determine which is the right section in the front-end.
// If no specialized section name is applicable, it will resort to default. // If no specialized section name is applicable, it will resort to default.
if (D->hasAttr<PragmaClangBSSSectionAttr>() || if (D->hasAttr<PragmaClangBSSSectionAttr>() ||
D->hasAttr<PragmaClangDataSectionAttr>() || D->hasAttr<PragmaClangDataSectionAttr>() ||
@ -4188,7 +4188,7 @@ ConstantAddress CodeGenModule::GetAddrOfGlobalTemporary(
if (VD->isStaticDataMember() && VD->getAnyInitializer(InitVD) && if (VD->isStaticDataMember() && VD->getAnyInitializer(InitVD) &&
isa<CXXRecordDecl>(InitVD->getLexicalDeclContext())) { isa<CXXRecordDecl>(InitVD->getLexicalDeclContext())) {
// Temporaries defined inside a class get linkonce_odr linkage because the // Temporaries defined inside a class get linkonce_odr linkage because the
// class can be defined in multipe translation units. // class can be defined in multiple translation units.
Linkage = llvm::GlobalVariable::LinkOnceODRLinkage; Linkage = llvm::GlobalVariable::LinkOnceODRLinkage;
} else { } else {
// There is no need for this temporary to have external linkage if the // There is no need for this temporary to have external linkage if the

View File

@ -777,7 +777,7 @@ public:
/// Return the llvm::Constant for the address of the given global variable. /// Return the llvm::Constant for the address of the given global variable.
/// If Ty is non-null and if the global doesn't exist, then it will be created /// If Ty is non-null and if the global doesn't exist, then it will be created
/// with the specified type instead of whatever the normal requested type /// with the specified type instead of whatever the normal requested type
/// would be. If IsForDefinition is true, it is guranteed that an actual /// would be. If IsForDefinition is true, it is guaranteed that an actual
/// global with type Ty will be returned, not conversion of a variable with /// global with type Ty will be returned, not conversion of a variable with
/// the same mangled name but some other type. /// the same mangled name but some other type.
llvm::Constant *GetAddrOfGlobalVar(const VarDecl *D, llvm::Constant *GetAddrOfGlobalVar(const VarDecl *D,
@ -1178,7 +1178,7 @@ public:
DeferredVTables.push_back(RD); DeferredVTables.push_back(RD);
} }
/// Emit code for a singal global function or var decl. Forward declarations /// Emit code for a single global function or var decl. Forward declarations
/// are emitted lazily. /// are emitted lazily.
void EmitGlobal(GlobalDecl D); void EmitGlobal(GlobalDecl D);

View File

@ -298,7 +298,7 @@ public:
auto Region = CounterMappingRegion::makeSkipped( auto Region = CounterMappingRegion::makeSkipped(
*CovFileID, SR.LineStart, SR.ColumnStart, SR.LineEnd, SR.ColumnEnd); *CovFileID, SR.LineStart, SR.ColumnStart, SR.LineEnd, SR.ColumnEnd);
// Make sure that we only collect the regions that are inside // Make sure that we only collect the regions that are inside
// the souce code of this function. // the source code of this function.
if (Region.LineStart >= FileLineRanges[*CovFileID].first && if (Region.LineStart >= FileLineRanges[*CovFileID].first &&
Region.LineEnd <= FileLineRanges[*CovFileID].second) Region.LineEnd <= FileLineRanges[*CovFileID].second)
MappingRegions.push_back(Region); MappingRegions.push_back(Region);

View File

@ -1436,7 +1436,7 @@ void ItaniumCXXABI::EmitInstanceFunctionProlog(CodeGenFunction &CGF) {
return; return;
/// Initialize the 'this' slot. In the Itanium C++ ABI, no prologue /// Initialize the 'this' slot. In the Itanium C++ ABI, no prologue
/// adjustments are required, becuase they are all handled by thunks. /// adjustments are required, because they are all handled by thunks.
setCXXABIThisValue(CGF, loadIncomingCXXThis(CGF)); setCXXABIThisValue(CGF, loadIncomingCXXThis(CGF));
/// Initialize the 'vtt' slot if needed. /// Initialize the 'vtt' slot if needed.

View File

@ -3363,7 +3363,7 @@ CGCXXABI *clang::CodeGen::CreateMicrosoftCXXABI(CodeGenModule &CGM) {
// BaseClassArray: Contains a list of classes in a hierarchy. BaseClassArray is // BaseClassArray: Contains a list of classes in a hierarchy. BaseClassArray is
// somewhat of a misnomer because the most derived class is also in the list // somewhat of a misnomer because the most derived class is also in the list
// as well as multiple copies of virtual bases (if they occur multiple times // as well as multiple copies of virtual bases (if they occur multiple times
// in the hiearchy.) The BaseClassArray contains one BaseClassDescriptor for // in the hierarchy.) The BaseClassArray contains one BaseClassDescriptor for
// every path in the hierarchy, in pre-order depth first order. Note, we do // every path in the hierarchy, in pre-order depth first order. Note, we do
// not declare a specific llvm type for BaseClassArray, it's merely an array // not declare a specific llvm type for BaseClassArray, it's merely an array
// of BaseClassDescriptor pointers. // of BaseClassDescriptor pointers.
@ -3911,7 +3911,7 @@ MicrosoftCXXABI::getAddrOfCXXCtorClosure(const CXXConstructorDecl *CD,
SourceLocation(), SourceLocation(),
&getContext().Idents.get("is_most_derived"), &getContext().Idents.get("is_most_derived"),
getContext().IntTy, ImplicitParamDecl::Other); getContext().IntTy, ImplicitParamDecl::Other);
// Only add the parameter to the list if thie class has virtual bases. // Only add the parameter to the list if the class has virtual bases.
if (RD->getNumVBases() > 0) if (RD->getNumVBases() > 0)
FunctionArgs.push_back(&IsMostDerived); FunctionArgs.push_back(&IsMostDerived);

View File

@ -266,7 +266,7 @@ public:
virtual llvm::SyncScope::ID getLLVMSyncScopeID(SyncScope S, virtual llvm::SyncScope::ID getLLVMSyncScopeID(SyncScope S,
llvm::LLVMContext &C) const; llvm::LLVMContext &C) const;
/// Inteface class for filling custom fields of a block literal for OpenCL. /// Interface class for filling custom fields of a block literal for OpenCL.
class TargetOpenCLBlockHelper { class TargetOpenCLBlockHelper {
public: public:
typedef std::pair<llvm::Value *, StringRef> ValueTy; typedef std::pair<llvm::Value *, StringRef> ValueTy;

View File

@ -95,7 +95,7 @@ bool VarBypassDetector::BuildScopeInformation(const Stmt *S,
case Stmt::CaseStmtClass: case Stmt::CaseStmtClass:
case Stmt::DefaultStmtClass: case Stmt::DefaultStmtClass:
case Stmt::LabelStmtClass: case Stmt::LabelStmtClass:
llvm_unreachable("the loop bellow handles labels and cases"); llvm_unreachable("the loop below handles labels and cases");
break; break;
default: default:

View File

@ -396,7 +396,7 @@ static llvm::Triple computeTargetTriple(const Driver &D,
// Handle Apple-specific options available here. // Handle Apple-specific options available here.
if (Target.isOSBinFormatMachO()) { if (Target.isOSBinFormatMachO()) {
// If an explict Darwin arch name is given, that trumps all. // If an explicit Darwin arch name is given, that trumps all.
if (!DarwinArchName.empty()) { if (!DarwinArchName.empty()) {
tools::darwin::setTripleTypeForMachOArchName(Target, DarwinArchName); tools::darwin::setTripleTypeForMachOArchName(Target, DarwinArchName);
return Target; return Target;

View File

@ -399,7 +399,7 @@ void arm::getARMTargetFeatures(const ToolChain &TC,
// Disable hardware FP features which have been enabled. // Disable hardware FP features which have been enabled.
// FIXME: Disabling vfp2 and neon should be enough as all the other // FIXME: Disabling vfp2 and neon should be enough as all the other
// features are dependant on these 2 features in LLVM. However // features are dependent on these 2 features in LLVM. However
// there is currently no easy way to test this in clang, so for // there is currently no easy way to test this in clang, so for
// now just be explicit and disable all known dependent features // now just be explicit and disable all known dependent features
// as well. // as well.

View File

@ -1693,7 +1693,7 @@ void Clang::AddPPCTargetArgs(const ArgList &Args,
void Clang::AddRISCVTargetArgs(const ArgList &Args, void Clang::AddRISCVTargetArgs(const ArgList &Args,
ArgStringList &CmdArgs) const { ArgStringList &CmdArgs) const {
// FIXME: currently defaults to the soft-float ABIs. Will need to be // FIXME: currently defaults to the soft-float ABIs. Will need to be
// expanded to select ilp32f, ilp32d, lp64f, lp64d when appropiate. // expanded to select ilp32f, ilp32d, lp64f, lp64d when appropriate.
const char *ABIName = nullptr; const char *ABIName = nullptr;
const llvm::Triple &Triple = getToolChain().getTriple(); const llvm::Triple &Triple = getToolChain().getTriple();
if (Arg *A = Args.getLastArg(options::OPT_mabi_EQ)) if (Arg *A = Args.getLastArg(options::OPT_mabi_EQ))
@ -2087,7 +2087,7 @@ static void RenderFloatingPointOptions(const ToolChain &TC, const Driver &D,
// Handle various floating point optimization flags, mapping them to the // Handle various floating point optimization flags, mapping them to the
// appropriate LLVM code generation flags. This is complicated by several // appropriate LLVM code generation flags. This is complicated by several
// "umbrella" flags, so we do this by stepping through the flags incrementally // "umbrella" flags, so we do this by stepping through the flags incrementally
// adjusting what we think is enabled/disabled, then at the end settting the // adjusting what we think is enabled/disabled, then at the end setting the
// LLVM flags based on the final state. // LLVM flags based on the final state.
bool HonorINFs = true; bool HonorINFs = true;
bool HonorNaNs = true; bool HonorNaNs = true;
@ -4247,7 +4247,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
!IsWindowsMSVC || IsMSVC2015Compatible)) !IsWindowsMSVC || IsMSVC2015Compatible))
CmdArgs.push_back("-fno-threadsafe-statics"); CmdArgs.push_back("-fno-threadsafe-statics");
// -fno-delayed-template-parsing is default, except when targetting MSVC. // -fno-delayed-template-parsing is default, except when targeting MSVC.
// Many old Windows SDK versions require this to parse. // Many old Windows SDK versions require this to parse.
// FIXME: MSVC introduced /Zc:twoPhase- to disable this behavior in their // FIXME: MSVC introduced /Zc:twoPhase- to disable this behavior in their
// compiler. We should be able to disable this by default at some point. // compiler. We should be able to disable this by default at some point.

View File

@ -1001,7 +1001,7 @@ tools::ParsePICArgs(const ToolChain &ToolChain, const ArgList &Args) {
RWPI = true; RWPI = true;
} }
// ROPI and RWPI are not comaptible with PIC or PIE. // ROPI and RWPI are not compatible with PIC or PIE.
if ((ROPI || RWPI) && (PIC || PIE)) if ((ROPI || RWPI) && (PIC || PIE))
ToolChain.getDriver().Diag(diag::err_drv_ropi_rwpi_incompatible_with_pic); ToolChain.getDriver().Diag(diag::err_drv_ropi_rwpi_incompatible_with_pic);

View File

@ -184,7 +184,7 @@ CudaInstallationDetector::CudaInstallationDetector(
StringRef GpuArch = FileName.slice( StringRef GpuArch = FileName.slice(
LibDeviceName.size(), FileName.find('.', LibDeviceName.size())); LibDeviceName.size(), FileName.find('.', LibDeviceName.size()));
LibDeviceMap[GpuArch] = FilePath.str(); LibDeviceMap[GpuArch] = FilePath.str();
// Insert map entries for specifc devices with this compute // Insert map entries for specific devices with this compute
// capability. NVCC's choice of the libdevice library version is // capability. NVCC's choice of the libdevice library version is
// rather peculiar and depends on the CUDA version. // rather peculiar and depends on the CUDA version.
if (GpuArch == "compute_20") { if (GpuArch == "compute_20") {

View File

@ -141,7 +141,7 @@ private:
// token. // token.
// //
// NextTok specifies the next token. A null pointer NextTok is supported, and // NextTok specifies the next token. A null pointer NextTok is supported, and
// signifies either the absense of a next token, or that the next token // signifies either the absence of a next token, or that the next token
// shouldn't be taken into accunt for the analysis. // shouldn't be taken into accunt for the analysis.
void distributeComments(const SmallVectorImpl<FormatToken *> &Comments, void distributeComments(const SmallVectorImpl<FormatToken *> &Comments,
const FormatToken *NextTok); const FormatToken *NextTok);

View File

@ -1,4 +1,4 @@
//===-- ASTMerge.cpp - AST Merging Frontent Action --------------*- C++ -*-===// //===-- ASTMerge.cpp - AST Merging Frontend Action --------------*- C++ -*-===//
// //
// The LLVM Compiler Infrastructure // The LLVM Compiler Infrastructure
// //

View File

@ -1300,7 +1300,7 @@ static bool compileAndLoadModule(CompilerInstance &ImportingInstance,
// case of timeout, build it ourselves. // case of timeout, build it ourselves.
Diags.Report(ModuleNameLoc, diag::remark_module_lock_timeout) Diags.Report(ModuleNameLoc, diag::remark_module_lock_timeout)
<< Module->Name; << Module->Name;
// Clear the lock file so that future invokations can make progress. // Clear the lock file so that future invocations can make progress.
Locked.unsafeRemoveLockFile(); Locked.unsafeRemoveLockFile();
continue; continue;
} }

View File

@ -186,7 +186,7 @@ void DiagnosticRenderer::emitIncludeStack(FullSourceLoc Loc, PresumedLoc PLoc,
} }
} }
/// \brief Helper to recursivly walk up the include stack and print each layer /// \brief Helper to recursively walk up the include stack and print each layer
/// on the way back down. /// on the way back down.
void DiagnosticRenderer::emitIncludeStackRecursively(FullSourceLoc Loc) { void DiagnosticRenderer::emitIncludeStackRecursively(FullSourceLoc Loc) {
if (Loc.isInvalid()) { if (Loc.isInvalid()) {
@ -227,7 +227,7 @@ void DiagnosticRenderer::emitImportStack(FullSourceLoc Loc) {
emitImportStackRecursively(NextImportLoc.first, NextImportLoc.second); emitImportStackRecursively(NextImportLoc.first, NextImportLoc.second);
} }
/// \brief Helper to recursivly walk up the import stack and print each layer /// \brief Helper to recursively walk up the import stack and print each layer
/// on the way back down. /// on the way back down.
void DiagnosticRenderer::emitImportStackRecursively(FullSourceLoc Loc, void DiagnosticRenderer::emitImportStackRecursively(FullSourceLoc Loc,
StringRef ModuleName) { StringRef ModuleName) {
@ -448,7 +448,7 @@ static bool checkLocForMacroArgExpansion(SourceLocation Loc,
} }
/// Check if all the locations in the range have the same macro argument /// Check if all the locations in the range have the same macro argument
/// expansion, and that that expansion starts with ArgumentLoc. /// expansion, and that the expansion starts with ArgumentLoc.
static bool checkRangeForMacroArgExpansion(CharSourceRange Range, static bool checkRangeForMacroArgExpansion(CharSourceRange Range,
const SourceManager &SM, const SourceManager &SM,
SourceLocation ArgumentLoc) { SourceLocation ArgumentLoc) {

View File

@ -135,7 +135,7 @@ static bool isCaseSensitivePath(StringRef Path) {
// Change path to all upper case and ask for its real path, if the latter // Change path to all upper case and ask for its real path, if the latter
// exists and is equal to Path, it's not case sensitive. Default to case // exists and is equal to Path, it's not case sensitive. Default to case
// sensitive in the absense of realpath, since this is what the VFSWriter // sensitive in the absence of realpath, since this is what the VFSWriter
// already expects when sensitivity isn't setup. // already expects when sensitivity isn't setup.
for (auto &C : Path) for (auto &C : Path)
UpperDest.push_back(toUppercase(C)); UpperDest.push_back(toUppercase(C));

View File

@ -6747,9 +6747,9 @@ static void Write_IvarOffsetVar(RewriteModernObjC &RewriteObj,
if (Ivar->getAccessControl() == ObjCIvarDecl::Private || if (Ivar->getAccessControl() == ObjCIvarDecl::Private ||
Ivar->getAccessControl() == ObjCIvarDecl::Package || Ivar->getAccessControl() == ObjCIvarDecl::Package ||
Class->getVisibility() == HiddenVisibility) Class->getVisibility() == HiddenVisibility)
Visibility shoud be: HiddenVisibility; Visibility should be: HiddenVisibility;
else else
Visibility shoud be: DefaultVisibility; Visibility should be: DefaultVisibility;
*/ */
Result += "\n"; Result += "\n";

View File

@ -462,7 +462,7 @@ void SDiagsWriter::EmitBlockInfoBlock() {
Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Blob)); // Diagnostc text. Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Blob)); // Diagnostc text.
Abbrevs.set(RECORD_DIAG, Stream.EmitBlockInfoAbbrev(BLOCK_DIAG, Abbrev)); Abbrevs.set(RECORD_DIAG, Stream.EmitBlockInfoAbbrev(BLOCK_DIAG, Abbrev));
// Emit abbrevation for RECORD_CATEGORY. // Emit abbreviation for RECORD_CATEGORY.
Abbrev = std::make_shared<BitCodeAbbrev>(); Abbrev = std::make_shared<BitCodeAbbrev>();
Abbrev->Add(BitCodeAbbrevOp(RECORD_CATEGORY)); Abbrev->Add(BitCodeAbbrevOp(RECORD_CATEGORY));
Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Fixed, 16)); // Category ID. Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Fixed, 16)); // Category ID.
@ -470,7 +470,7 @@ void SDiagsWriter::EmitBlockInfoBlock() {
Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Blob)); // Category text. Abbrev->Add(BitCodeAbbrevOp(BitCodeAbbrevOp::Blob)); // Category text.
Abbrevs.set(RECORD_CATEGORY, Stream.EmitBlockInfoAbbrev(BLOCK_DIAG, Abbrev)); Abbrevs.set(RECORD_CATEGORY, Stream.EmitBlockInfoAbbrev(BLOCK_DIAG, Abbrev));
// Emit abbrevation for RECORD_SOURCE_RANGE. // Emit abbreviation for RECORD_SOURCE_RANGE.
Abbrev = std::make_shared<BitCodeAbbrev>(); Abbrev = std::make_shared<BitCodeAbbrev>();
Abbrev->Add(BitCodeAbbrevOp(RECORD_SOURCE_RANGE)); Abbrev->Add(BitCodeAbbrevOp(RECORD_SOURCE_RANGE));
AddRangeLocationAbbrev(*Abbrev); AddRangeLocationAbbrev(*Abbrev);

View File

@ -54,7 +54,7 @@ struct dim3;
#define __DELETE #define __DELETE
#endif #endif
// Make sure nobody can create instances of the special varible types. nvcc // Make sure nobody can create instances of the special variable types. nvcc
// also disallows taking address of special variables, so we disable address-of // also disallows taking address of special variables, so we disable address-of
// operator as well. // operator as well.
#define __CUDA_DISALLOW_BUILTINVAR_ACCESS(TypeName) \ #define __CUDA_DISALLOW_BUILTINVAR_ACCESS(TypeName) \

View File

@ -125,7 +125,7 @@ _mm_aesimc_si128(__m128i __V)
return (__m128i)__builtin_ia32_aesimc128((__v2di)__V); return (__m128i)__builtin_ia32_aesimc128((__v2di)__V);
} }
/// \brief Generates a round key for AES encyption, operating on 128-bit data /// \brief Generates a round key for AES encryption, operating on 128-bit data
/// specified in the first source operand and using an 8-bit round constant /// specified in the first source operand and using an 8-bit round constant
/// specified by the second source operand, and writes the result to the /// specified by the second source operand, and writes the result to the
/// destination. /// destination.

View File

@ -214,7 +214,7 @@ __TM_failure_code(void* const __TM_buff)
/* These intrinsics are being made available for compatibility with /* These intrinsics are being made available for compatibility with
the IBM XL compiler. For documentation please see the "z/OS XL the IBM XL compiler. For documentation please see the "z/OS XL
C/C++ Programming Guide" publically available on the web. */ C/C++ Programming Guide" publicly available on the web. */
static __inline long __attribute__((__always_inline__, __nodebug__)) static __inline long __attribute__((__always_inline__, __nodebug__))
__TM_simple_begin () __TM_simple_begin ()

View File

@ -88,7 +88,7 @@
* *
* To accommodate targets that are missing types that are exactly 8, 16, 32, or * To accommodate targets that are missing types that are exactly 8, 16, 32, or
* 64 bits wide, this implementation takes an approach of cascading * 64 bits wide, this implementation takes an approach of cascading
* redefintions, redefining __int_leastN_t to successively smaller exact-width * redefinitions, redefining __int_leastN_t to successively smaller exact-width
* types. It is therefore important that the types are defined in order of * types. It is therefore important that the types are defined in order of
* descending widths. * descending widths.
* *
@ -461,7 +461,7 @@ typedef __UINTMAX_TYPE__ uintmax_t;
* As in the type definitions, this section takes an approach of * As in the type definitions, this section takes an approach of
* successive-shrinking to determine which limits to use for the standard (8, * successive-shrinking to determine which limits to use for the standard (8,
* 16, 32, 64) bit widths when they don't have exact representations. It is * 16, 32, 64) bit widths when they don't have exact representations. It is
* therefore important that the defintions be kept in order of decending * therefore important that the definitions be kept in order of decending
* widths. * widths.
* *
* Note that C++ should not check __STDC_LIMIT_MACROS here, contrary to the * Note that C++ should not check __STDC_LIMIT_MACROS here, contrary to the

Some files were not shown because too many files have changed in this diff Show More