In this paper, we examine a three-machine flow shop scheduling problem with overlapping waiting time constraints with the objective of minimizing makespan. In the problem, jobs that finish processing on the first machine must be processed on the second and third machines within designated time periods. These overlapping waiting time constraints are common scheduling requirements in semiconductor manufacturing since up to 20% of all process steps are controlled with waiting time limits to achieve better quality. We first derive dominance properties for the problem by analyzing overlapping waiting time constraints, and then we develop a branch and bound algorithm that uses these properties. An initial solution is obtained by heuristic algorithms, and seven lower bounds are proposed for the branch and bound algorithm. The performance of the algorithm is evaluated with computational tests. (C) 2018 Elsevier Ltd. All rights reserved.