Please explain the syntax error in the code? this code is to check that tree is bst or not?

bool check_tree_bst(node*root){
// in case there is no tree
if(root==NULL)return true;

(check_tree_bst(root->left) && check_tree_bst(root->right) && (root->left?(root->data>root-left->data):true)
	&& (root->right?(root->data<root->right->data):true)) ? return true :return false;

}

Heyy Nikhil !!! you are checking just wheather the current data is leass than its right child data and current data is
greater than left child data or not . But its not like that , you have to take care of the case that current data is greater than equal to the maximum data in left child tree and less than minimum data in right child tree.