Skip to content

Fixed grammar in comments #219

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 4 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions docs/ABI.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The Swift ABI
Hard Constraints on Resilience
------------------------------

The root of a class hierarchy must remain stable, at pain of
The root of a class hierarchy must remain stable, at the inconvenience of
invalidating the metaclass hierarchy. Note that a Swift class without an
explicit base class is implicitly rooted in the SwiftObject
Objective-C class.
Expand All @@ -27,7 +27,7 @@ Structs and tuples currently share the same layout algorithm, noted as the
is as follows:

- Start with a **size** of **0** and an **alignment** of **1**.
- Iterate through the fields, in element order for tuples, or in ``var``
- Iterate through the fields, in element order for tuples, or in ``var``
declaration order for structs. For each field:

* Update **size** by rounding up to the **alignment of the field**, that is,
Expand All @@ -39,7 +39,7 @@ is as follows:
**alignment of the field**.

- The final **size** and **alignment** are the size and alignment of the
aggregate. The **stride** of the type is the final **size** rounded up to
aggregate. The **stride** of the type is the final **size** rounded up to
**alignment**.

Note that this differs from C or LLVM's normal layout rules in that *size*
Expand Down Expand Up @@ -261,7 +261,7 @@ Existential Container Layout

Values of protocol type, protocol composition type, or "any" type
(``protocol<>``) are laid out using **existential containers** (so-called
because these types are "existential types" in type theory).
because these types are "existential types" in type theory).

Opaque Existential Containers
`````````````````````````````
Expand Down Expand Up @@ -838,7 +838,7 @@ The first identifier in a ``<private-decl-name>`` is a string that represents
the file the original declaration came from. It should be considered unique
within the enclosing module. The second identifier is the name of the entity.

Not all declarations marked ``private`` declarations will use the
Not all declarations marked ``private`` declarations will use the
``<private-decl-name>`` mangling; if the entity's context is enough to uniquely
identify the entity, the simple ``identifier`` form is preferred.

Expand Down Expand Up @@ -915,7 +915,7 @@ Types
type ::= 'b' type type // objc block function type
type ::= 'c' type type // C function pointer type
type ::= 'F' throws-annotation? type type // function type
type ::= 'f' throws-annotation? type type // uncurried function type
type ::= 'f' throws-annotation? type type // uncurried function type
type ::= 'G' type <type>+ '_' // generic type application
type ::= 'K' type type // @auto_closure function type
type ::= 'M' type // metatype without representation
Expand Down
8 changes: 4 additions & 4 deletions docs/DriverInternals.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ Driver Stages
The compiler driver for Swift roughly follows the same design as Clang's
compiler driver:

1. Parse: Command-line arguments are parsed into ``Arg``\ s. A ToolChain is
1. Parse: Command-line arguments are parsed into ``Arg``\ s. A ToolChain is
selected based on the current platform.
2. Pipeline: Based on the arguments and inputs, a tree of ``Action``\ s is
generated. These are the high-level processing steps that need to occur,
2. Pipeline: Based on the arguments and inputs, a tree of ``Action``\ s is
generated. These are the high-level processing steps that need to occur,
such as "compile this file" or "link the output of all compilation actions".
3. Bind: The ToolChain converts the ``Action``\ s into a set of ``Job``\ s.
These are individual commands that need to be run, such as
Expand Down Expand Up @@ -114,7 +114,7 @@ Analysis` for more information.
The Compilation's TaskQueue controls the low-level aspects of managing
subprocesses. Multiple Jobs may execute simultaneously, but communication with
the parent process (the driver) is handled on a single thread. The level of
parellelism may be controlled by a compiler flag.
parallelism may be controlled by a compiler flag.

If a Job does not finish successfully, the Compilation needs to record which
jobs have failed, so that they get rebuilt next time the user tries to build
Expand Down