protected override CompilerPipeline SetUpCompilerPipeline() { CompilerPipeline pipeline = new Boo.Lang.Compiler.Pipelines.Compile(); pipeline.Add(new Boo.Lang.Compiler.Steps.PrintWarnings()); return(pipeline); }
protected override CompilerPipeline SetUpCompilerPipeline() { CompilerPipeline pipeline = new Boo.Lang.Compiler.Pipelines.Compile(); pipeline.Add(new Boo.Lang.Compiler.Steps.PrintWarnings()); return pipeline; }
protected virtual void SetupCompilerPipeline(IDictionary <string, IList <Comment> > comments) { var pipeline = new Boo.Lang.Compiler.Pipelines.Compile { BreakOnErrors = false }; pipeline.Remove(typeof(ConstantFolding)); pipeline.Remove(typeof(ExpandPropertiesAndEvents)); pipeline.Remove(typeof(CheckNeverUsedMembers)); pipeline.Remove(typeof(StricterErrorChecking)); pipeline.Remove(typeof(RemoveDeadCode)); pipeline.Remove(typeof(OptimizeIterationStatements)); pipeline.Remove(typeof(ProcessGenerators)); pipeline.Remove(typeof(NormalizeIterationStatements)); pipeline.Remove(typeof(ProcessMethodBodies)); var adjustedPipeline = UnityScriptCompiler.Pipelines.AdjustBooPipeline(pipeline); adjustedPipeline.Add(new FixClosures()); adjustedPipeline.Remove(typeof(InjectCallableConversions)); adjustedPipeline.Remove(typeof(CheckIdentifiers)); adjustedPipeline.Remove(typeof(ProcessClosures)); adjustedPipeline.Remove(typeof(ExpandUnityDuckTypedExpressions)); adjustedPipeline.Replace(typeof(ProcessUnityScriptMethods), new SelectiveUnaryExpressionExpansionProcessUnityScriptMethods()); adjustedPipeline.Insert(0, new PreProcessCollector(_referencedPreProcessorSymbols)); adjustedPipeline.Add(new FixFunctionReferences()); adjustedPipeline.Add(new FixTypeAccessibility()); adjustedPipeline.Add(new CSharpReservedKeywordIdentifierClashFix()); adjustedPipeline.Add(new CtorFieldInitializationFix()); adjustedPipeline.Add(new RemoveUnnecessaryCastInArrayInstantiation()); adjustedPipeline.Add(new FixEnumReferences()); adjustedPipeline.Add(new OperatorMethodToLanguageOperator()); adjustedPipeline.Add(new FixSwitchWithOnlyDefault()); adjustedPipeline.Add(new MergeMainMethodStatementsIntoStartMethod()); adjustedPipeline.Add(new ExpandValueTypeObjectInitialization()); adjustedPipeline.Add(new CastInjector()); adjustedPipeline.Add(new ExpandAssignmentToValueTypeMembers()); adjustedPipeline.Add(new ApplyEnumToImplicitConversions()); adjustedPipeline.Add(new InferredMethodReturnTypeFix()); adjustedPipeline.Add(new RenameArrayDeclaration()); adjustedPipeline.Add(new ReplaceUnityScriptArrayWithObjectArray()); adjustedPipeline.Add(new InjectTypeOfExpressionsInArgumentsOfSystemType()); adjustedPipeline.Add(new ReplaceArrayMemberReferenceWithCamelCaseVersion()); adjustedPipeline.Add(new ReplaceGetSetItemMethodsWithOriginalIndexers()); adjustedPipeline.Add(new PromoteImplicitBooleanConversionsToExplicitComparisons()); adjustedPipeline.Add(new InstanceToTypeReferencedStaticMemberReference()); adjustedPipeline.Add(new TransforwmKnownUnityEngineMethods()); if (!_skipComments) { adjustedPipeline.Add(new AttachComments(comments)); } _compiler.Parameters.Pipeline = adjustedPipeline; }