summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@complang.org>2011-05-26 04:29:38 +0000
committerAdrian Thurston <thurston@complang.org>2011-05-26 04:29:38 +0000
commitd16bfbd3243846895926cfa1648cbfcd0f653c59 (patch)
tree8ff88192ad68e5f5c102cddee1e7dbdd63192daf
parent9b6006286b0de94880d44d708acb3394df28ad42 (diff)
downloadcolm-d16bfbd3243846895926cfa1648cbfcd0f653c59.tar.gz
.cpp files to .cc
-rw-r--r--colm/Makefile.am26
-rw-r--r--colm/analysis.cc (renamed from colm/analysis.cpp)0
-rw-r--r--colm/closure.cc (renamed from colm/closure.cpp)0
-rw-r--r--colm/compile.cc (renamed from colm/compile.cpp)0
-rw-r--r--colm/ctinput.cc (renamed from colm/ctinput.cpp)0
-rw-r--r--colm/dotgen.cc (renamed from colm/dotgen.cpp)0
-rw-r--r--colm/fsmap.cc (renamed from colm/fsmap.cpp)0
-rw-r--r--colm/fsmattach.cc (renamed from colm/fsmattach.cpp)0
-rw-r--r--colm/fsmbase.cc (renamed from colm/fsmbase.cpp)0
-rw-r--r--colm/fsmcodegen.cc (renamed from colm/fsmcodegen.cpp)0
-rw-r--r--colm/fsmexec.cc (renamed from colm/fsmexec.cpp)0
-rw-r--r--colm/fsmgraph.cc (renamed from colm/fsmgraph.cpp)0
-rw-r--r--colm/fsmmin.cc (renamed from colm/fsmmin.cpp)0
-rw-r--r--colm/fsmstate.cc (renamed from colm/fsmstate.cpp)0
-rw-r--r--colm/lmparse.kl37
-rw-r--r--colm/main.cc (renamed from colm/main.cpp)0
-rw-r--r--colm/map.cc (renamed from colm/map.cpp)0
-rw-r--r--colm/parsedata.cc (renamed from colm/parsedata.cpp)0
-rw-r--r--colm/parsetree.cc (renamed from colm/parsetree.cpp)0
-rw-r--r--colm/pcheck.cc (renamed from colm/pcheck.cpp)0
-rw-r--r--colm/pdabuild.cc (renamed from colm/pdabuild.cpp)0
-rw-r--r--colm/pdacodegen.cc (renamed from colm/pdacodegen.cpp)0
-rw-r--r--colm/pdagraph.cc (renamed from colm/pdagraph.cpp)0
-rw-r--r--colm/redbuild.cc (renamed from colm/redbuild.cpp)0
-rw-r--r--colm/redfsm.cc (renamed from colm/redfsm.cpp)0
25 files changed, 50 insertions, 13 deletions
diff --git a/colm/Makefile.am b/colm/Makefile.am
index e8612c47..40c6379b 100644
--- a/colm/Makefile.am
+++ b/colm/Makefile.am
@@ -35,7 +35,7 @@
# ADT LDFLAGS +=
# ADT
# ADT # Files in ALL_SRC that are generated.
-# ADT GEN_SRC = version.h lmscan.cpp lmparse.h lmparse.cpp
+# ADT GEN_SRC = version.h lmscan.cc lmparse.h lmparse.cc
# ADT
# ADT RUNTIME_P = libcolmp.a
# ADT RUNTIME_D = libcolmd.a
@@ -56,11 +56,11 @@
# ADT CC = @CC@
# ADT
# ADT # Get objects and dependencies from sources.
-# ADT COLM_OBJ = $(COLM_SRC:%.cpp=%.o)
+# ADT COLM_OBJ = $(COLM_SRC:%.cc=%.o)
# ADT RUNTIME_OBJ_P = $(RUNTIME_SRC:%.c=%_p.o)
# ADT RUNTIME_OBJ_D = $(RUNTIME_SRC:%.c=%_d.o)
# ADT
-# ADT DEPS = $(COLM_SRC:%.cpp=.%.d) $(RUNTIME_SRC:%.c=.%_p.d) $(RUNTIME_SRC:%.c=.%_d.d)
+# ADT DEPS = $(COLM_SRC:%.cc=.%.d) $(RUNTIME_SRC:%.c=.%_p.d) $(RUNTIME_SRC:%.c=.%_d.d)
# ADT
# ADT # Rules.
# ADT all: colm $(RUNTIME_P) $(RUNTIME_D)
@@ -79,7 +79,7 @@
# ADT echo '#define PUBDATE "$(PUBDATE)"' >> version.h
# ADT
# ADT
-# ADT $(COLM_OBJ): %.o: %.cpp
+# ADT $(COLM_OBJ): %.o: %.cc
# ADT @$(CXX) -M $(DEFS_COLM) $(INCS) $< > .$*.d
# ADT $(CXX) -c $(CFLAGS) $(DEFS_COLM) $(INCS) -o $@ $<
# ADT
@@ -145,12 +145,12 @@ if BUILD_PARSERS
lmparse.h: lmparse.kh
kelbt -o $@ $<
-lmparse.cpp: lmparse.kl lmparse.kh
+lmparse.cc: lmparse.kl lmparse.kh
kelbt -o $@ $<
-lmscan.cpp: lmparse.h
+lmscan.cc: lmparse.h
-lmscan.cpp: lmscan.rl
+lmscan.cc: lmscan.rl
ragel -G2 -o $@ $<
endif
@@ -161,14 +161,14 @@ colm_SOURCES = \
parsetree.h pcheck.h pdacodegen.h pdagraph.h pdarun.h pool.h redbuild.h \
redfsm.h rtvector.h tree.h version.h \
\
- analysis.cpp compile.cpp lmparse.cpp lmscan.cpp parsetree.cpp \
- parsedata.cpp fsmstate.cpp fsmbase.cpp fsmattach.cpp fsmmin.cpp \
- fsmgraph.cpp pdagraph.cpp pdabuild.cpp pdacodegen.cpp fsmcodegen.cpp \
- redfsm.cpp fsmexec.cpp main.cpp redbuild.cpp closure.cpp fsmap.cpp \
- dotgen.cpp pcheck.cpp ctinput.cpp
+ analysis.cc compile.cc lmparse.cc lmscan.cc parsetree.cc \
+ parsedata.cc fsmstate.cc fsmbase.cc fsmattach.cc fsmmin.cc \
+ fsmgraph.cc pdagraph.cc pdabuild.cc pdacodegen.cc fsmcodegen.cc \
+ redfsm.cc fsmexec.cc main.cc redbuild.cc closure.cc fsmap.cc \
+ dotgen.cc pcheck.cc ctinput.cc
BUILT_SOURCES = \
- version.h lmscan.cpp lmparse.h lmparse.cpp
+ version.h lmscan.cc lmparse.h lmparse.cc
version.h: Makefile
echo '#define VERSION "$(PACKAGE_VERSION)"' > version.h
diff --git a/colm/analysis.cpp b/colm/analysis.cc
index 20220266..20220266 100644
--- a/colm/analysis.cpp
+++ b/colm/analysis.cc
diff --git a/colm/closure.cpp b/colm/closure.cc
index ed3c3fa4..ed3c3fa4 100644
--- a/colm/closure.cpp
+++ b/colm/closure.cc
diff --git a/colm/compile.cpp b/colm/compile.cc
index a8fd4196..a8fd4196 100644
--- a/colm/compile.cpp
+++ b/colm/compile.cc
diff --git a/colm/ctinput.cpp b/colm/ctinput.cc
index 0da57a2b..0da57a2b 100644
--- a/colm/ctinput.cpp
+++ b/colm/ctinput.cc
diff --git a/colm/dotgen.cpp b/colm/dotgen.cc
index 723d3c08..723d3c08 100644
--- a/colm/dotgen.cpp
+++ b/colm/dotgen.cc
diff --git a/colm/fsmap.cpp b/colm/fsmap.cc
index 33c9e12e..33c9e12e 100644
--- a/colm/fsmap.cpp
+++ b/colm/fsmap.cc
diff --git a/colm/fsmattach.cpp b/colm/fsmattach.cc
index ebefb1c4..ebefb1c4 100644
--- a/colm/fsmattach.cpp
+++ b/colm/fsmattach.cc
diff --git a/colm/fsmbase.cpp b/colm/fsmbase.cc
index 25da005d..25da005d 100644
--- a/colm/fsmbase.cpp
+++ b/colm/fsmbase.cc
diff --git a/colm/fsmcodegen.cpp b/colm/fsmcodegen.cc
index 6d6bd2f6..6d6bd2f6 100644
--- a/colm/fsmcodegen.cpp
+++ b/colm/fsmcodegen.cc
diff --git a/colm/fsmexec.cpp b/colm/fsmexec.cc
index e7f776f9..e7f776f9 100644
--- a/colm/fsmexec.cpp
+++ b/colm/fsmexec.cc
diff --git a/colm/fsmgraph.cpp b/colm/fsmgraph.cc
index 7dedda04..7dedda04 100644
--- a/colm/fsmgraph.cpp
+++ b/colm/fsmgraph.cc
diff --git a/colm/fsmmin.cpp b/colm/fsmmin.cc
index bf886cf0..bf886cf0 100644
--- a/colm/fsmmin.cpp
+++ b/colm/fsmmin.cc
diff --git a/colm/fsmstate.cpp b/colm/fsmstate.cc
index 556123f6..556123f6 100644
--- a/colm/fsmstate.cpp
+++ b/colm/fsmstate.cc
diff --git a/colm/lmparse.kl b/colm/lmparse.kl
index a5ac2417..0a12b264 100644
--- a/colm/lmparse.kl
+++ b/colm/lmparse.kl
@@ -430,6 +430,42 @@ type_ref: basic_type_ref
$$->typeRef = $1->typeRef;
};
+type_ref: KW_Map '<' type_ref type_ref '>'
+ final {
+ Namespace *nspace = namespaceStack.top();
+
+ /* FIXME: Need uniqe name allocator for types. */
+ static int mapId = 0;
+ String name( 36, "__map%d", mapId++ );
+
+ KlangEl *langEl = getKlangEl( pd, nspace, name );
+
+ /* Check that the element wasn't previously defined as something else. */
+ if ( langEl->type != KlangEl::Unknown ) {
+ error($1->loc) << "'" << name <<
+ "' already defined as something else" << endp;
+ }
+ langEl->type = KlangEl::NonTerm;
+
+ GenericType *generic = new GenericType( name, GEN_MAP,
+ pd->nextGenericId++, 0, $4->typeRef );
+ generic->keyTypeArg = $3->typeRef;
+
+ /* Add one empty production. */
+ ProdElList *emptyList = new ProdElList;
+ addProduction( $1->loc, String(), emptyList, false, 0, 0 );
+
+ nspace->genericList.append( generic );
+ langEl->generic = generic;
+
+ NamespaceQual *nspaceQual = new NamespaceQual( namespaceStack.top(), regionStack.top() );
+ $$->typeRef = new TypeRef( InputLoc(), nspaceQual, name );
+ };
+
+type_ref: KW_List '<' type_ref '>';
+type_ref: KW_Vector '<' type_ref '>';
+type_ref: KW_Accum '<' type_ref '>';
+
nonterm basic_type_ref uses type_ref;
basic_type_ref: region_qual TK_Word opt_repeat
@@ -445,6 +481,7 @@ basic_type_ref: KW_Ptr region_qual TK_Word opt_repeat
$$->typeRef->isPtr = true;
};
+
nonterm var_def
{
InputLoc loc;
diff --git a/colm/main.cpp b/colm/main.cc
index 6d55643e..6d55643e 100644
--- a/colm/main.cpp
+++ b/colm/main.cc
diff --git a/colm/map.cpp b/colm/map.cc
index f336a3c7..f336a3c7 100644
--- a/colm/map.cpp
+++ b/colm/map.cc
diff --git a/colm/parsedata.cpp b/colm/parsedata.cc
index ac6b2fe3..ac6b2fe3 100644
--- a/colm/parsedata.cpp
+++ b/colm/parsedata.cc
diff --git a/colm/parsetree.cpp b/colm/parsetree.cc
index 6d6407c8..6d6407c8 100644
--- a/colm/parsetree.cpp
+++ b/colm/parsetree.cc
diff --git a/colm/pcheck.cpp b/colm/pcheck.cc
index 298411f7..298411f7 100644
--- a/colm/pcheck.cpp
+++ b/colm/pcheck.cc
diff --git a/colm/pdabuild.cpp b/colm/pdabuild.cc
index 2a8b5e6e..2a8b5e6e 100644
--- a/colm/pdabuild.cpp
+++ b/colm/pdabuild.cc
diff --git a/colm/pdacodegen.cpp b/colm/pdacodegen.cc
index 8561e76b..8561e76b 100644
--- a/colm/pdacodegen.cpp
+++ b/colm/pdacodegen.cc
diff --git a/colm/pdagraph.cpp b/colm/pdagraph.cc
index fbea60d1..fbea60d1 100644
--- a/colm/pdagraph.cpp
+++ b/colm/pdagraph.cc
diff --git a/colm/redbuild.cpp b/colm/redbuild.cc
index 70124ed8..70124ed8 100644
--- a/colm/redbuild.cpp
+++ b/colm/redbuild.cc
diff --git a/colm/redfsm.cpp b/colm/redfsm.cc
index d1510fec..d1510fec 100644
--- a/colm/redfsm.cpp
+++ b/colm/redfsm.cc