I want to build tree for the following c expression: p + foo(); (p is pointer type and foo() returns size_t) Is following the correct way to do it: (call_expr represents call to foo() ) tree expr = build2 (POINTER_PLUS_EXPR, TREE_TYPE (p), p, call_expr); Thanks and Regards, Prathamesh