-
Notifications
You must be signed in to change notification settings - Fork 34
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This specifies more of the basic language behaviors including declarations and definitions. HLSL has some small implicit differences from C & C++ for declarations and definitions. Notably the handling of global variable declarations, which are implcitly const and external unless `static` is specified. * Add cbuffer and tbuffer to examples cbuffer and tbuffer are odd. They declare global variables that are read from a specific cbv or srv and allow defining layouts of the buffers. The name of the buffer is exposed in reflection data, but not declared as a name within the translation unit. The names of variables within the buffers are declared as global names.
- Loading branch information
1 parent
195855f
commit 681fd7f
Showing
3 changed files
with
134 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,20 @@ | ||
% This file contains chapter and section references to speculative headings that | ||
% haven't been written yet. The specific names and ordering aren't expected to | ||
% match exactly this in the final specification. These are mostly here so that | ||
% forward references can be inserted into the specification as it is being | ||
% written to force updating the references as they change. | ||
|
||
\Ch{Statements}{Stmt} | ||
\Sec{Label Statements}{Stmt.Label} | ||
\Ch{Declarations}{Decl} | ||
\Sec{Function Definitions}{Decl.Function} | ||
\Sec{Attributes}{Decl.Attr} | ||
\Sub{Entry Attributes}{Decl.Attr.Entry} | ||
\Ch{Classes}{Classes} | ||
\Sec{Conversions}{Classes.Conversions} | ||
\Ch{Overloading}{Overload} | ||
\Sec{Operators}{Overload.Operator} | ||
\Ch{Templates}{Template} | ||
\Sec{Template Instantiation}{Template.Inst} | ||
\Ch{Intangible Types}{Intangible} | ||
\Ch{Runtime}{Runtime} |