projects
/
babeltrace.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add callsite support
[babeltrace.git]
/
formats
/
ctf
/
metadata
/
ctf-visitor-semantic-validator.c
diff --git
a/formats/ctf/metadata/ctf-visitor-semantic-validator.c
b/formats/ctf/metadata/ctf-visitor-semantic-validator.c
index 3db7fd7751eaa29672de85c317db11384b5ac030..1af74c42a8db04577d47a4d35c28c5509f9195f0 100644
(file)
--- a/
formats/ctf/metadata/ctf-visitor-semantic-validator.c
+++ b/
formats/ctf/metadata/ctf-visitor-semantic-validator.c
@@
-110,6
+110,7
@@
int ctf_visitor_unary_expression(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_TYPEDEF:
case NODE_TYPEALIAS_TARGET:
case NODE_TYPEALIAS_ALIAS:
case NODE_TYPEDEF:
case NODE_TYPEALIAS_TARGET:
case NODE_TYPEALIAS_ALIAS:
@@
-214,6
+215,7
@@
int ctf_visitor_type_specifier_list(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_UNARY_EXPRESSION:
case NODE_TYPEALIAS:
case NODE_TYPE_SPECIFIER:
case NODE_UNARY_EXPRESSION:
case NODE_TYPEALIAS:
case NODE_TYPE_SPECIFIER:
@@
-255,6
+257,7
@@
int ctf_visitor_type_specifier(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_UNARY_EXPRESSION:
case NODE_TYPEALIAS:
case NODE_TYPE_SPECIFIER:
case NODE_UNARY_EXPRESSION:
case NODE_TYPEALIAS:
case NODE_TYPE_SPECIFIER:
@@
-337,6
+340,7
@@
int ctf_visitor_type_declarator(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_CTF_EXPRESSION:
case NODE_UNARY_EXPRESSION:
case NODE_TYPEALIAS:
case NODE_CTF_EXPRESSION:
case NODE_UNARY_EXPRESSION:
case NODE_TYPEALIAS:
@@
-516,7
+520,20
@@
int _ctf_visitor_semantic_check(FILE *fd, int depth, struct ctf_node *node)
return ret;
}
break;
return ret;
}
break;
+ case NODE_CALLSITE:
+ switch (node->parent->type) {
+ case NODE_ROOT:
+ break; /* OK */
+ default:
+ goto errinval;
+ }
+ bt_list_for_each_entry(iter, &node->u.callsite.declaration_list, siblings) {
+ ret = _ctf_visitor_semantic_check(fd, depth + 1, iter);
+ if (ret)
+ return ret;
+ }
+ break;
case NODE_CTF_EXPRESSION:
switch (node->parent->type) {
case NODE_CTF_EXPRESSION:
switch (node->parent->type) {
@@
-526,6
+543,7
@@
int _ctf_visitor_semantic_check(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
case NODE_ENV:
case NODE_TRACE:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_FLOATING_POINT:
case NODE_INTEGER:
case NODE_STRING:
case NODE_FLOATING_POINT:
case NODE_INTEGER:
case NODE_STRING:
@@
-593,6
+611,7
@@
int _ctf_visitor_semantic_check(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENUMERATOR:
case NODE_ENUM:
case NODE_CLOCK:
case NODE_ENUMERATOR:
case NODE_ENUM:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_ENV:
default:
goto errinval;
case NODE_ENV:
default:
goto errinval;
@@
-699,6
+718,7
@@
int _ctf_visitor_semantic_check(FILE *fd, int depth, struct ctf_node *node)
case NODE_ENUMERATOR:
case NODE_ENUM:
case NODE_CLOCK:
case NODE_ENUMERATOR:
case NODE_ENUM:
case NODE_CLOCK:
+ case NODE_CALLSITE:
case NODE_ENV:
default:
goto errinval;
case NODE_ENV:
default:
goto errinval;
This page took
0.024473 seconds
and
4
git commands to generate.