summaryrefslogtreecommitdiff
path: root/src/compiler/GF/Compile
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2013-09-09 14:29:57 +0000
committerhallgren <hallgren@chalmers.se>2013-09-09 14:29:57 +0000
commit83283b0d6a1e714def620a2ad2a7166c6c3a0147 (patch)
treea2b4ce8733808e516ad9ba573395599da5a0685e /src/compiler/GF/Compile
parent5a4454aa8f910bc701da5cd4057eed77196764ad (diff)
Fix an old name shadowing bug in concrete syntax by removing the refresh pass
The refresh pass does not correctly keep track of the scope of local variables and can convert things like \x->(\x->x) x into \x1->(\x2->x2) x2. Fortunately, it appears that the refresh pass is not needed anymore, so it has been removed.
Diffstat (limited to 'src/compiler/GF/Compile')
-rw-r--r--src/compiler/GF/Compile/Compute/ConcreteLazy.hs2
-rw-r--r--src/compiler/GF/Compile/Compute/ConcreteStrict.hs4
-rw-r--r--src/compiler/GF/Compile/Optimize.hs2
-rw-r--r--src/compiler/GF/Compile/Refresh.hs7
-rw-r--r--src/compiler/GF/Compile/TypeCheck/Abstract.hs2
5 files changed, 9 insertions, 8 deletions
diff --git a/src/compiler/GF/Compile/Compute/ConcreteLazy.hs b/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
index 4107329fb..fce118fec 100644
--- a/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
+++ b/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
@@ -24,7 +24,7 @@ import GF.Grammar.Printer
import GF.Grammar.Predef
import GF.Grammar.Macros
import GF.Grammar.Lookup
-import GF.Compile.Refresh
+--import GF.Compile.Refresh
import GF.Grammar.PatternMatch
import GF.Grammar.Lockfield (isLockLabel,unlockRecord) ----
diff --git a/src/compiler/GF/Compile/Compute/ConcreteStrict.hs b/src/compiler/GF/Compile/Compute/ConcreteStrict.hs
index 08c5229ef..3f417bae2 100644
--- a/src/compiler/GF/Compile/Compute/ConcreteStrict.hs
+++ b/src/compiler/GF/Compile/Compute/ConcreteStrict.hs
@@ -18,14 +18,14 @@ import GF.Data.Operations
import GF.Grammar.Grammar
import GF.Infra.Ident
import GF.Infra.Option
-import GF.Infra.Modules
+--import GF.Infra.Modules
import GF.Data.Str
import GF.Grammar.ShowTerm
import GF.Grammar.Printer
import GF.Grammar.Predef
import GF.Grammar.Macros
import GF.Grammar.Lookup
-import GF.Compile.Refresh
+--import GF.Compile.Refresh
import GF.Grammar.PatternMatch
import GF.Grammar.Lockfield (isLockLabel,unlockRecord) ----
diff --git a/src/compiler/GF/Compile/Optimize.hs b/src/compiler/GF/Compile/Optimize.hs
index 0599ed85b..3641440d8 100644
--- a/src/compiler/GF/Compile/Optimize.hs
+++ b/src/compiler/GF/Compile/Optimize.hs
@@ -21,7 +21,7 @@ import GF.Grammar.Printer
import GF.Grammar.Macros
import GF.Grammar.Lookup
import GF.Grammar.Predef
-import GF.Compile.Refresh
+--import GF.Compile.Refresh
import GF.Compile.Compute.Concrete
import GF.Compile.CheckGrammar
import GF.Compile.Update
diff --git a/src/compiler/GF/Compile/Refresh.hs b/src/compiler/GF/Compile/Refresh.hs
index edff8a479..837534afa 100644
--- a/src/compiler/GF/Compile/Refresh.hs
+++ b/src/compiler/GF/Compile/Refresh.hs
@@ -12,10 +12,10 @@
-- (Description of the module)
-----------------------------------------------------------------------------
-module GF.Compile.Refresh (refreshTerm, refreshTermN,
- refreshModule
+module GF.Compile.Refresh ({-refreshTermN, refreshTerm,
+ refreshModule-}
) where
-
+{-
import GF.Data.Operations
import GF.Grammar.Grammar
import GF.Infra.Ident
@@ -143,3 +143,4 @@ inBlockSTM mo = do
return v
+-} \ No newline at end of file
diff --git a/src/compiler/GF/Compile/TypeCheck/Abstract.hs b/src/compiler/GF/Compile/TypeCheck/Abstract.hs
index d6886b6ca..dfded01d2 100644
--- a/src/compiler/GF/Compile/TypeCheck/Abstract.hs
+++ b/src/compiler/GF/Compile/TypeCheck/Abstract.hs
@@ -25,7 +25,7 @@ import GF.Infra.CheckM
import GF.Grammar
import GF.Grammar.Lookup
import GF.Grammar.Unify
-import GF.Compile.Refresh
+--import GF.Compile.Refresh
import GF.Compile.Compute.Abstract
import GF.Compile.TypeCheck.TC