def p_unary_6(self, program):
        """
           unary : id '(' expression ')'
        """
        # note this is a semantic check, not syntactic
        if program[1].name not in self.external_functions:
            raise QasmError("Illegal external function call: ",
                            str(program[1].name))
        program[0] = node.External([program[1], program[3]])