Iterative learning control (ILC) aims at improving the tracking performance of repetitive tasks based on information learnt from past attempts (trials). Modern practical applications demand more flexibility than current frameworks can deliver, in both how the task is specified and how system constraints are applied. To provide these features, an ILC framework is formulated in this paper for a generalized design objective with mixed system constraints, which includes intermediate position and sub-interval tracking as special cases. This is the first framework to combine a generalized ILC task description with constraint handling for continuous time systems. The successive projection method is applied to yield a comprehensive ILC algorithm with attractive convergence properties and computationally efficient implementation. This algorithm is verified experimentally on a gantry robot test platform, whose results reveal its practical efficacy and robustness against model uncertainty.