We need to check and report OpenMP semantic errors in lark lowering. For example a `single` directive must be nested under a `parallel` construct.
We need to check and report OpenMP semantic errors in lark lowering. For example a
singledirective must be nested under aparallelconstruct.