-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Fix win32 breakage 18 dec #9399
Changes from 4 commits
3d8ef7a
2fba5da
5e313e8
1a46407
0b4daa3
90f7117
5baa115
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
// Upgrade a single Envoy C++ file to the latest API version. | ||
// | ||
// Currently this tool is a WiP and only does inference of .pb[.validate].h | ||
// Currently this tool is a WIP and only does inference of .pb[.validate].h | ||
// #include locations. This already exercises some of the muscles we need, such | ||
// as AST matching, rudimentary type inference and API type database lookup. | ||
// | ||
|
@@ -112,7 +112,7 @@ class ApiBooster : public clang::ast_matchers::MatchFinder::MatchCallback, | |
return true; | ||
} | ||
|
||
// Visitor callback for end of a compiation unit. | ||
// Visitor callback for end of a compilation unit. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you remove "compiation" from the dictionary. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not on our fork. Will have to merge to master first. |
||
void handleEndSource() override { | ||
// Dump known API header paths to stdout for api_boost.py to rewrite with | ||
// (no rewriting support in this tool yet). | ||
|
@@ -161,7 +161,7 @@ class ApiBooster : public clang::ast_matchers::MatchFinder::MatchCallback, | |
// Die hard if we don't have a useful proto type for something that looks | ||
// like an API type(modulo a short whitelist). | ||
std::cerr << "Unknown API type: " << proto_type_name << std::endl; | ||
// TODO(htuch): mabye there is a nicer way to terminate AST traversal? | ||
// TODO(htuch): maybe there is a nicer way to terminate AST traversal? | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Likewise. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'd suggest you might be better off tracking the commit that added these, and work backwards to correct them (these are simply files that trip up verify on our roll-up of work, we didn't look for every misspelling.) These are only the few that we found, this was obviously pushed no-verify, and the spelling words added after the fact. (see: [https://github.com//pull/9241] ) |
||
::exit(1); | ||
} | ||
|
||
|
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 this needed? It seems lexically obvious we are in a namespace where TypedMetadataFactory should be usable without qualification. If this cannot work I wonder what other things will fail?
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.
From this commit log;
We are quite confused as well, this is the error output of the original source;
Things that are confusing, why promote TypedMetadataFactory:: to Envoy::Config:: in these contexts? Why the anon namespace? Suggestions and observations welcome.
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.
Does it work if you just extend
TypedMetadataFactory
instead ofTypedMetadataFactory::TypedMetadataFactory
? The latter seems to be nonsense, since there's no TypedMetadataFactory namespace in the code.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.
@zuercher agreed, that was the issue. Will push the fix first thing Friday.