aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Yakimowich-Payne <jyapayne@gmail.com>2020-05-06 07:20:29 -0600
committergenotrance <dev@genotrance.com>2020-05-06 11:08:07 -0500
commit4ffb49a531124d6219f594eff3eb6e192528d27a (patch)
tree10ab284a532b6283d5109517cc361f6515c6ceaf
parentd5c15d0d3aebc1eced79faa0c1621351be56f60a (diff)
downloadnimterop-4ffb49a531124d6219f594eff3eb6e192528d27a.tar.gz
nimterop-4ffb49a531124d6219f594eff3eb6e192528d27a.zip
Add comment, potentially fix linux test
-rw-r--r--nimterop/ast2.nim2
-rw-r--r--nimterop/exprparser.nim11
2 files changed, 12 insertions, 1 deletions
diff --git a/nimterop/ast2.nim b/nimterop/ast2.nim
index 4c06cc6..aa0e8d8 100644
--- a/nimterop/ast2.nim
+++ b/nimterop/ast2.nim
@@ -106,7 +106,7 @@ proc newConstDef(gState: State, node: TSNode, fname = "", fval = ""): PNode =
if not maybeTyNode.isNil:
let name = maybeTyNode.getName()
case name
- of "type_descriptor", "sized_type_specifier":
+ of "type_descriptor", "sized_type_specifier", "primitive_type":
discard
else:
# Can't do gState.parseCExpression(root) here for some reason?
diff --git a/nimterop/exprparser.nim b/nimterop/exprparser.nim
index 5372c2f..b0c34c1 100644
--- a/nimterop/exprparser.nim
+++ b/nimterop/exprparser.nim
@@ -549,6 +549,17 @@ proc processTSNode(gState: State, node: TSNode, typeofNode: var PNode): PNode =
# Output -> true, false
result = gState.parseString(node.val)
of "type_descriptor":
+ # Input => int*
+ # (type_descriptor 1 2 4 "int*"
+ # (type_identifier 1 2 3 "int")
+ # (abstract_pointer_declarator 1 3 1 "*")
+ # )
+ #
+ # Output => ptr int
+ #
+ # nkPtrTy(
+ # nkIdent("int")
+ # )
let pointerDecl = node.anyChildInTree("abstract_pointer_declarator")
if pointerDecl.isNil: