diff --git a/doc/gf-history.html b/doc/gf-history.html
index 6a60fb4aa..5f96b9569 100644
--- a/doc/gf-history.html
+++ b/doc/gf-history.html
@@ -16,8 +16,25 @@ Changes in functionality since May 17, 2005, release of GF Version 2.2
+18/6 (AR)
+Added a warning for clashing constants. A constant coming from multiple opened modules
+was interpreted as "the first" found by the compiler, which was a source of difficult
+errors. Clashing is officially forbidden, but we chose to give a warning instead of
+raising an error to begin with (in version 2.8).
+
+
+
+30/1/2007 (AR)
+Semantics of variants fixed for complex types. Officially, it was only
+defined for basic types (Str and parameters). When used for records, results were
+multiplicative, which was nor usable. But now variants should work for any type.
+
+
+
22/12 (AR) Release of GF version 2.7.
+
+
21/12 (AR)
Overloading rules for GF version 2.7:
diff --git a/lib/resource-1.0/api/Constructors.gf b/lib/resource-1.0/api/Constructors.gf
index d239ca299..3652caecb 100644
--- a/lib/resource-1.0/api/Constructors.gf
+++ b/lib/resource-1.0/api/Constructors.gf
@@ -2,6 +2,8 @@
incomplete resource Constructors = open Grammar in {
+ flags optimize=noexpand ;
+
-- This module gives access to the syntactic constructions of the
-- GF Resource Grammar library. Its main principle is simple:
-- to construct an object of type $C$, use the function $mkC$.
diff --git a/lib/resource-1.0/api/SyntaxDan.gf b/lib/resource-1.0/api/SyntaxDan.gf
new file mode 100644
index 000000000..4eb74d2d7
--- /dev/null
+++ b/lib/resource-1.0/api/SyntaxDan.gf
@@ -0,0 +1,4 @@
+--# -path=.:alltenses:prelude
+
+instance SyntaxDan of Syntax = ConstructorsDan, CatDan, StructuralDan ** {} ;
+
diff --git a/lib/resource-1.0/api/SyntaxIta.gf b/lib/resource-1.0/api/SyntaxIta.gf
new file mode 100644
index 000000000..9ebdfce86
--- /dev/null
+++ b/lib/resource-1.0/api/SyntaxIta.gf
@@ -0,0 +1,4 @@
+--# -path=.:alltenses:prelude
+
+instance SyntaxIta of Syntax = ConstructorsIta, CatIta, StructuralIta ** {} ;
+
diff --git a/lib/resource-1.0/api/SyntaxNor.gf b/lib/resource-1.0/api/SyntaxNor.gf
new file mode 100644
index 000000000..9cf7c252f
--- /dev/null
+++ b/lib/resource-1.0/api/SyntaxNor.gf
@@ -0,0 +1,4 @@
+--# -path=.:alltenses:prelude
+
+instance SyntaxNor of Syntax = ConstructorsNor, CatNor, StructuralNor ** {} ;
+
diff --git a/lib/resource-1.0/api/SyntaxRus.gf b/lib/resource-1.0/api/SyntaxRus.gf
new file mode 100644
index 000000000..d4c25113a
--- /dev/null
+++ b/lib/resource-1.0/api/SyntaxRus.gf
@@ -0,0 +1,4 @@
+--# -path=.:alltenses:prelude
+
+instance SyntaxRus of Syntax = ConstructorsRus, CatRus, StructuralRus ** {} ;
+
diff --git a/lib/resource-1.0/api/SyntaxSpa.gf b/lib/resource-1.0/api/SyntaxSpa.gf
new file mode 100644
index 000000000..eb4029860
--- /dev/null
+++ b/lib/resource-1.0/api/SyntaxSpa.gf
@@ -0,0 +1,4 @@
+--# -path=.:alltenses:prelude
+
+instance SyntaxSpa of Syntax = ConstructorsSpa, CatSpa, StructuralSpa ** {} ;
+
diff --git a/lib/resource-1.0/multimodal/MultiI.gf b/lib/resource-1.0/multimodal/MultiI.gf
index 98084f2d5..cd10d1545 100644
--- a/lib/resource-1.0/multimodal/MultiI.gf
+++ b/lib/resource-1.0/multimodal/MultiI.gf
@@ -56,7 +56,7 @@ incomplete concrete MultiI of Multi =
ComparAdvAdjS ca a s = Lang.ComparAdvAdjS ca a s ** {point = s.point} ;
AdAdv ad a = Lang.AdAdv ad a ** {point = a.point} ;
SubjS su s = Lang.SubjS su s ** {point = s.point} ;
- AdvSC sc = AdvSC sc ** {point = sc.point} ;
+ AdvSC sc = Lang.AdvSC sc ** {point = sc.point} ;
UseV v = Lang.UseV v ** noPoint ;
ComplV2 v np = Lang.ComplV2 v np ** {point = np.point} ;