From the context of Your question, I assume you are trying to provide a warning/error message to the end user who is trying to build a tree like structure by adding parent of a node as it's child.
First of all, this is purely ui issue (weather or not the data structure can handle circular references is beside the point) and should be mostly avoidable by not allowing this type of situation to occur in the first place.
If you allow to pick an existing node from the tree to add as a child node, just filter out (or disable) all the parents in the hierarchy so that the parent of your current node can not be chosen for a child node.
If you are offering drag-and-drop functionality, just exclude the children of the element under cursor from the set of drop targets.
If you use "move to" type of action and pick a new parent for the item, exclude the entire subtree from the set of target nodes.
Only if there is some objective reason why you can not avoid such erroneous situations and have to provide some sort of message, try to explain it concisely and using the domain terms instead of technical language.
For example, in one of my previous project we had a hierarchical structure of Venues that had the same constraints. In there I would have formed a message that would have looked like this:
Can not move.
The {parent venue name} already contains {target venue name}.