1
1
Title : P4~16~ Language Specification
2
- Title Note: version 1.1.0
2
+ Title Note: version 1.2.0-rc
3
3
Title Footer: &date;
4
4
Author: The P4 Language Consortium
5
5
Heading depth: 5
@@ -2672,7 +2672,7 @@ control d(packet_out b, in Hdr h) {
2672
2672
2673
2673
Functions and methods are the only P4 constructs that support
2674
2674
overloading: there can exist multiple methods with the same name in
2675
- the same scope. Whe overloading is used, the compiler must be able to
2675
+ the same scope. When overloading is used, the compiler must be able to
2676
2676
disambiguate at compile-time which method or function is being called,
2677
2677
either by the number of arguments or by the names of the arguments,
2678
2678
when calls are specifying argument names. Argument type information
@@ -4354,7 +4354,7 @@ table tbl {
4354
4354
4355
4355
## Operations on types introduced by `type` { #sec-newtype-operations }
4356
4356
4357
- Values with a type introduced by the `type` keywork provide only few operations:
4357
+ Values with a type introduced by the `type` keyword provide only few operations:
4358
4358
4359
4359
- assignment to left-values of the same type
4360
4360
- comparisons for equality and inequality if the original type supported such comparisons
@@ -4491,7 +4491,7 @@ The `initializer` expression must be a compile-time known value.
4491
4491
4492
4492
## Variables { #sec-variables }
4493
4493
4494
- Local variables are declared with an a type, a name, and an optional
4494
+ Local variables are declared with a type, a name, and an optional
4495
4495
initializer (as well as an optional annotation):
4496
4496
4497
4497
~ Begin P4Grammar
@@ -7238,7 +7238,7 @@ The P4 compiler should provide:
7238
7238
| | | restrictions on arguments to calls, and modified precedence of |
7239
7239
| | | bitwise operators. |
7240
7240
|-----|-----|-----|
7241
- | 1.2.0 | October, 2019 | Added error `ParserInvalidArgument`, order of `const` entries, |
7241
+ | 1.2.0 | October, 14, 2019 | Added error `ParserInvalidArgument`, order of `const` entries, |
7242
7242
| | | header size methods, 1-bit signed values, signed bit slices, empty |
7243
7243
| | | tuples, `@deprecated` annotation, free-form annotations, `int` type |
7244
7244
| | | `table.apply().miss`, `string` type. |
@@ -7248,20 +7248,17 @@ The P4 compiler should provide:
7248
7248
7249
7249
* Added `table.apply().miss` (Section [#sec-invoke-mau]).
7250
7250
* Added `string` type (Section [#sec-string]).
7251
- * Implicit casts from enum values (Section [#sec-enum-exprs]).
7251
+ * Added implicit casts from enum values (Section [#sec-enum-exprs]).
7252
7252
* Allow 1-bit signed values
7253
7253
* Define the type of bit slices from signed and unsigned values to be unsigned.
7254
7254
* Constrain `default` label position for `switch` statements.
7255
7255
* Allow empty tuples.
7256
7256
* Added `@deprecated` annotation.
7257
7257
* Relaxed the structure of annotation bodies.
7258
- * Removed the `@pkginfo` annotation. This is defined by the P4Runtime
7259
- specification.
7258
+ * Removed the `@pkginfo` annotation, which is now defined by the P4Runtime specification.
7260
7259
* Added `int` type (Section [#sec-infinite-precision-integers]).
7261
- * Added error `ParserInvalidArgument` (Sections
7262
- [#sec-packet-extract-two], [#sec-skip-bits]).
7263
- * Clarify the significance of order of entries in `const entries`
7264
- (Section [#sec-entries]).
7260
+ * Added error `ParserInvalidArgument` (Sections [#sec-packet-extract-two], [#sec-skip-bits]).
7261
+ * Clarified the significance of order of entries in `const entries` (Section [#sec-entries]).
7265
7262
* Added methods to calculate header size (Section [#sec-ops-on-hdrs]).
7266
7263
7267
7264
## Summary of changes made in version 1.1.0
@@ -7557,7 +7554,7 @@ parameters: parsers, controls, extern methods, actions, and functions.
7557
7554
| value types | yes | yes | yes | yes | yes |
7558
7555
|-------------|-----------|---------|---------|---------|----------|
7559
7556
7560
- Extern method calls may return only return a value that is a value
7557
+ Extern method calls may only return a value that is a value
7561
7558
type, or no value at all (specified by a return type of `void`).
7562
7559
7563
7560
The next table lists restrictions on what kinds of calls can be made
0 commit comments