I am getting the below shown compilation error for the class file ApplicationError.cls after upgrading to 11.6. This file used to compile without any issues in 10.2B .
There is no change as far as I could see in the FlagsEnum.cls and ApplicationError.cls. Can anybody help me out with what could be wrong here ?
We introduced Progress.Lang.FlagsEnum for supporting ABL enums. I am assuming that this is related to the order of your USING statements and that the one under Progress.Lang is being picked up first.
The order in which I have the using statement in given below :
routine-level on error undo, throw.
using OpenEdge.Core.Util.IObjectInput.using OpenEdge.Core.Util.IObjectOutput.using OpenEdge.Core.Util.IExternalizable.using OpenEdge.Core.System.ApplicationError.using OpenEdge.Core.System.ErrorSeverityEnum.
using OpenEdge.Lang.DataTypeEnum.using OpenEdge.Lang.IOModeEnum.using OpenEdge.Lang.FlagsEnum.using OpenEdge.Lang.Assert.using Progress.Lang.ParameterList.using Progress.Lang.AppError.using Progress.Lang.Object.using Progress.Lang.Class.using Progress.Lang.Error.
I tried changing the order by moving the FlagsEnum after Progress.Lang.Class but results was same . What am I missing here? Is there any other order that I have to use the Using statements?
OpenEdge.Core.FlagsEnum is the wronr type. I'm guessing (from the type names ) that you're using autoedge (or parts of it) and that has the OE.Core.FlagsEnum.
You want to use Progress.Lang.FlagsEnum instead.