summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@complang.org>2015-04-03 17:09:44 -0400
committerAdrian Thurston <thurston@complang.org>2015-04-03 17:09:44 -0400
commitc8b421d4412cf96f2408b63cc7a5497884e5e672 (patch)
tree0ca75935a17aa613e31033fc0d5add8aadb784c2
parent55f268c6e8f2c6f6821e56625efa999829d40281 (diff)
downloadcolm-c8b421d4412cf96f2408b63cc7a5497884e5e672.tar.gz
some warning fixes, CFLAGS default needs to be higher in configure.ac
-rw-r--r--configure.ac6
-rw-r--r--src/iter.c2
-rw-r--r--src/map.c2
-rw-r--r--src/tree.c64
-rw-r--r--src/tree.h2
5 files changed, 14 insertions, 62 deletions
diff --git a/configure.ac b/configure.ac
index 0aa6e4b4..18dbdbd0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,6 +23,9 @@ PUBDATE="Jan 2015"
AM_INIT_AUTOMAKE([foreign])
+: ${CFLAGS="-Wall -g"}
+: ${CXXFLAGS="-Wall -g"}
+
AC_CONFIG_MACRO_DIR([m4])
AC_SUBST(PUBDATE)
@@ -39,9 +42,6 @@ AM_CONDITIONAL(BUILD_MANUAL, [test "x$build_manual" = "xyes"])
AC_CHECK_SIZEOF([long])
-: ${CFLAGS="-Wall -g"}
-: ${CXXFLAGS="-Wall -g"}
-
dnl Generic dependency specification.
AC_ARG_WITH(deps,
[AC_HELP_STRING([--with-deps], [generic dependency location])],
diff --git a/src/iter.c b/src/iter.c
index 866d12b7..8f4990ee 100644
--- a/src/iter.c
+++ b/src/iter.c
@@ -263,8 +263,6 @@ void userIterDestroy( Program *prg, Tree ***psp, UserIter *uiter )
long curStackSize = vm_ssize() - uiter->rootSize;
assert( uiter->yieldSize == curStackSize );
- long argSize = uiter->argSize;
-
vm_popn( uiter->yieldSize );
vm_popn( sizeof(UserIter) / sizeof(Word) );
diff --git a/src/map.c b/src/map.c
index a4110cca..2f851551 100644
--- a/src/map.c
+++ b/src/map.c
@@ -666,6 +666,7 @@ MapEl *colm_vmap_insert( Program *prg, Map *map, Struct *key, Struct *value )
MapEl *mapEl = colm_struct_get_addr( s, MapEl*, map->genericInfo->elOffset );
colm_map_insert( prg, map, mapEl );
+ return 0;
}
MapEl *colm_vmap_remove( Program *prg, Map *map, Tree *key )
@@ -673,6 +674,7 @@ MapEl *colm_vmap_remove( Program *prg, Map *map, Tree *key )
MapEl *mapEl = colm_map_find( prg, map, key );
if ( mapEl != 0 )
colm_map_detach( prg, map, mapEl );
+ return 0;
}
Tree *colm_vmap_find( Program *prg, Map *map, Tree *key )
diff --git a/src/tree.c b/src/tree.c
index 4787e31a..42eb9a24 100644
--- a/src/tree.c
+++ b/src/tree.c
@@ -845,60 +845,10 @@ Tree *copyRealTree( Program *prg, Tree *tree, Kid *oldNextDown, Kid **newNextDow
return newTree;
}
-List *copyList( Program *prg, List *list, Kid *oldNextDown, Kid **newNextDown )
-{
-#if 0
- /* Not a need copy. */
- List *newList = (List*)mapElAllocate( prg );
- newList->id = list->genericInfo->langElId;
- newList->genericInfo = list->genericInfo;
-
- ListEl *src = list->head;
- while( src != 0 ) {
- ListEl *newEl = listElAllocate( prg );
- newEl->value = src->value;
- treeUpref( newEl->value );
-
- listAppend( newList, newEl );
-
- /* Watch out for next down. */
- if ( (Kid*)src == oldNextDown )
- *newNextDown = (Kid*)newEl;
-
- src = src->next;
- }
-
- return newList;
-#endif
-}
-
-Map *copyMap( Program *prg, Map *map, Kid *oldNextDown, Kid **newNextDown )
-{
-#if 0
- Map *newMap = (Map*)mapElAllocate( prg );
- newMap->id = map->genericInfo->langElId;
- newMap->genericInfo = map->genericInfo;
- newMap->treeSize = map->treeSize;
- newMap->root = 0;
-
- /* If there is a root, copy the tree. */
- if ( map->root != 0 ) {
- newMap->root = mapCopyBranch( prg, newMap, map->root,
- oldNextDown, newNextDown );
- }
- MapEl *el;
- for ( el = newMap->head; el != 0; el = el->next ) {
- assert( map->genericInfo->typeArg == TYPE_TREE );
- treeUpref( el->tree );
- }
-
- return newMap;
-#endif
-}
Tree *copyTree( Program *prg, Tree *tree, Kid *oldNextDown, Kid **newNextDown )
{
- LangElInfo *lelInfo = prg->rtd->lelInfo;
+// LangElInfo *lelInfo = prg->rtd->lelInfo;
// long genericId = lelInfo[tree->id].genericId;
// if ( genericId > 0 )
// assert(false);
@@ -947,11 +897,11 @@ Tree *splitTree( Program *prg, Tree *tree )
void treeFreeRec( Program *prg, Tree **sp, Tree *tree )
{
Tree **top = vm_ptop();
- LangElInfo *lelInfo;
- long genericId;
+// LangElInfo *lelInfo;
+// long genericId;
free_tree:
- lelInfo = prg->rtd->lelInfo;
+// lelInfo = prg->rtd->lelInfo;
// genericId = lelInfo[tree->id].genericId;
// assert( genericId == 0 );
@@ -1017,11 +967,11 @@ void treeDownref( Program *prg, Tree **sp, Tree *tree )
void objectFreeRec( Program *prg, Tree **sp, Tree *tree )
{
Tree **top = vm_ptop();
- LangElInfo *lelInfo;
- long genericId;
+// LangElInfo *lelInfo;
+// long genericId;
free_tree:
- lelInfo = prg->rtd->lelInfo;
+// lelInfo = prg->rtd->lelInfo;
switch ( tree->id ) {
case LEL_ID_STR: {
diff --git a/src/tree.h b/src/tree.h
index 3cea7e82..972e2c76 100644
--- a/src/tree.h
+++ b/src/tree.h
@@ -39,6 +39,7 @@ struct _FunctionInfo;
typedef struct colm_stream Stream;
typedef struct colm_parser Parser;
typedef struct colm_list List;
+typedef struct colm_list_el ListEl;
typedef struct colm_map Map;
typedef struct colm_location
@@ -346,6 +347,7 @@ void colm_init_list_iter( GenericIter *listIter, Tree **stackRoot,
void colm_list_iter_destroy( struct colm_program *prg, Tree ***psp, GenericIter *iter );
Tree *colm_list_iter_advance( struct colm_program *prg, Tree ***psp, GenericIter *iter );
Tree *colm_list_iter_deref_cur( struct colm_program *prg, GenericIter *iter );
+void colm_list_append( struct colm_list *list, struct colm_list_el *newEl );
void colm_vlist_append( struct colm_program *prg, List *list, Value value );
void colm_vlist_prepend( struct colm_program *prg, List *list, Value value );