-
Notifications
You must be signed in to change notification settings - Fork 1.7k
[CPP-418] QLDoc enhancements #1864
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
Conversation
Which modules still need fixing (and are not being worked on by someone else)? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some comments.
Thank you for taking on this task!
… figure out how to describe unknown and erroneous types.)
…erations and built-in operations.
…sorted complex number operations, where surface syntax could not be determined.
a06228f
to
ee9cced
Compare
assorted complex/imaginary arithmetic operations.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comments on recent changes.
* `getInitializingExpr()` is `x < y`. | ||
* A C++ variable declaration inside the conditional expression of a `while` or `if` | ||
* compound statement. Declaring a variable this way narrows its lifetime and scope | ||
* to be strictly the compound statement itself. For example: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assume they can occur in a for
loop as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, they cannot. The initializer clause of a for
can indeed contain declaration(s), but they are not conditional ones (i.e., compared against zero) as in while
or if
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about:
for (i = 0; bool c = x < y; x++) ...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, that is not legal (though an interesting idea); the second clause must be an expression, not a declaration.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It works for me: #1945
@@ -997,7 +1055,7 @@ private Expr getStmtResultExpr(Stmt stmt) { | |||
} | |||
|
|||
/** | |||
* A C/C++ this expression. | |||
* The C++ `this` pointer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is it better to describe this
as a pointer rather than an expression?
(I agree with replacing "C/C++" with just "C++" here).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Calling it a pointer is just simpler (and the way most C++ programmers think about this
).
similar to array initializers.
Now #2309. |
Type.qll for now.