Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Unified Diff: sdk/lib/_internal/compiler/implementation/compiler.dart

Issue 13261008: Check for cyclic reference in typedefs (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebased Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/implementation/compiler.dart
diff --git a/sdk/lib/_internal/compiler/implementation/compiler.dart b/sdk/lib/_internal/compiler/implementation/compiler.dart
index 4270b83fd81f09f391d8b53eae757376e32d1f70..d61e0e6e18e4ee2b001cf0b5350cc96bf4c1b88f 100644
--- a/sdk/lib/_internal/compiler/implementation/compiler.dart
+++ b/sdk/lib/_internal/compiler/implementation/compiler.dart
@@ -85,6 +85,15 @@ class CodegenWorkItem extends WorkItem {
}
}
+typedef void PostProcess();
ahe 2013/04/02 08:22:39 I'd call this PostProcessAction or VoidFunction.
Johnni Winther 2013/04/02 09:40:14 PostProcessAction it is.
+
+class PostProcessing {
ahe 2013/04/02 08:22:39 I'd call this PostProcessTask.
Johnni Winther 2013/04/02 09:40:14 Done.
+ final Element element;
+ final PostProcess process;
+
+ PostProcessing(this.element, this.process);
+}
+
class ReadingFilesTask extends CompilerTask {
ReadingFilesTask(Compiler compiler) : super(compiler);
String get name => 'Reading input files';
@@ -835,6 +844,9 @@ abstract class Compiler implements DiagnosticListener {
withCurrentElement(work.element, () => work.run(this, world));
});
world.queueIsClosed = true;
+ world.forEachPostProcessing((PostProcessing work) {
+ withCurrentElement(work.element, () => work.process());
+ });
if (compilationFailed) return;
assert(world.checkNoEnqueuedInvokedInstanceMethods());
if (DUMP_INFERRED_TYPES && phase == PHASE_COMPILING) {

Powered by Google App Engine
This is Rietveld 408576698