From 5e17832dbbb4807e50a0f4dc55004fb83cc4f468 Mon Sep 17 00:00:00 2001 From: slava Date: Fri, 10 Nov 2006 20:44:16 +0000 Subject: [PATCH] Don't print compiler warnings during bootstrap, they're useless --- TODO.FACTOR.txt | 1 + library/bootstrap/boot-stage2.factor | 159 ++++++++++++++------------- library/compiler/compiler.factor | 9 +- 3 files changed, 92 insertions(+), 77 deletions(-) diff --git a/TODO.FACTOR.txt b/TODO.FACTOR.txt index 55aa4d510e..f8d4537243 100644 --- a/TODO.FACTOR.txt +++ b/TODO.FACTOR.txt @@ -1,6 +1,7 @@ - sometimes fep when closing window - windows rollover broken again - compile error after reloading library/math/float.factor +- move window while factor is busy: mouse gets messed up! + ui: diff --git a/library/bootstrap/boot-stage2.factor b/library/bootstrap/boot-stage2.factor index 2e1e1e81c4..08148a6afa 100644 --- a/library/bootstrap/boot-stage2.factor +++ b/library/bootstrap/boot-stage2.factor @@ -5,97 +5,104 @@ kernel kernel-internals listener math memory modules namespaces optimizer parser sequences sequences-internals words ; [ - ! Wrap everything in a catch which starts a listener so you - ! can see what went wrong, instead of dealing with a fep + print-warnings off + [ - "Cross-referencing..." print flush - H{ } clone changed-words set-global - H{ } clone crossref set-global xref-words + ! Wrap everything in a catch which starts a listener so + ! you can see what went wrong, instead of dealing with a + ! fep + [ + "Cross-referencing..." print flush + H{ } clone changed-words set-global + H{ } clone crossref set-global xref-words - cpu "x86" = [ - macosx? - "resource:/library/compiler/x86/alien-macosx.factor" - "resource:/library/compiler/x86/alien.factor" - ? run-file - ] when - - "compile" get [ - windows? [ - "resource:/library/windows/dlls.factor" run-file + cpu "x86" = [ + macosx? + "resource:/library/compiler/x86/alien-macosx.factor" + "resource:/library/compiler/x86/alien.factor" + ? run-file ] when - \ number= compile - \ + compile - \ nth compile - \ set-nth compile - \ = compile - - ! Load UI backend - "cocoa" get [ - "library/ui/cocoa" require - ] when - - "x11" get [ - "library/ui/x11" require - ] when - - windows? [ - "library/ui/windows" require - ] when - - ! Load native I/O code - "native-io" get [ - unix? [ - "library/io/unix" require - ] when + "compile" get [ windows? [ - "library/io/windows" require + "resource:/library/windows/dlls.factor" + run-file ] when + + \ number= compile + \ + compile + \ nth compile + \ set-nth compile + \ = compile + + ! Load UI backend + "cocoa" get [ + "library/ui/cocoa" require + ] when + + "x11" get [ + "library/ui/x11" require + ] when + + windows? [ + "library/ui/windows" require + ] when + + ! Load native I/O code + "native-io" get [ + unix? [ + "library/io/unix" require + ] when + windows? [ + "library/io/windows" require + ] when + ] when + + parse-command-line + + compile-all + + "Initializing native I/O..." print flush + "native-io" get [ init-io ] when + + ! We only do this if we are compiled, otherwise + ! it takes too long. + "Building online help search index..." print + flush + H{ } clone parent-graph set-global xref-help + H{ } clone term-index set-global index-help ] when + ] no-parse-hook - parse-command-line + run-bootstrap-init - compile-all + [ + boot + run-user-init + "shell" get "shells" lookup execute + 0 exit + ] set-boot - "Initializing native I/O..." print flush - "native-io" get [ init-io ] when + f error set-global + f error-continuation set-global - ! We only do this if we are compiled, otherwise it - ! takes too long. - "Building online help search index..." print flush - H{ } clone parent-graph set-global xref-help - H{ } clone term-index set-global index-help - ] when - ] no-parse-hook + [ compiled? ] word-subset length + number>string write " compiled words" print - run-bootstrap-init + [ symbol? ] word-subset length + number>string write " symbol words" print - [ - boot - run-user-init - "shell" get "shells" lookup execute - 0 exit - ] set-boot + all-words length + number>string write " words total" print - f error set-global - f error-continuation set-global + "Total bootstrap GC time: " write gc-time + number>string write " ms" print - [ compiled? ] word-subset length - number>string write " compiled words" print + "Bootstrapping is complete." print + "Now, you can run ./f factor.image" print flush - [ symbol? ] word-subset length - number>string write " symbol words" print - - all-words length - number>string write " words total" print - - "Total bootstrap GC time: " write gc-time - number>string write " ms" print - - "Bootstrapping is complete." print - "Now, you can run ./f factor.image" print flush - - "factor.image" resource-path save-image -] [ print-error :c ] recover + "factor.image" resource-path save-image + ] [ print-error :c ] recover +] with-scope 0 exit diff --git a/library/compiler/compiler.factor b/library/compiler/compiler.factor index 3f5442e7c3..9aade068eb 100644 --- a/library/compiler/compiler.factor +++ b/library/compiler/compiler.factor @@ -5,6 +5,10 @@ USING: errors generic hashtables inference io kernel math namespaces optimizer parser prettyprint sequences test threads words ; +SYMBOL: print-warnings + +t print-warnings set-global + SYMBOL: batch-errors GENERIC: batch-begins ( batch-errors -- ) @@ -17,7 +21,10 @@ M: f compile-begins drop "Compiling " write . flush ; GENERIC: compile-error ( error batch-errors -- ) -M: f compile-error drop error. flush ; +M: f compile-error + drop + dup inference-error-major? print-warnings get or + [ dup error. flush ] when drop ; GENERIC: batch-ends ( batch-errors -- )