Index: src/SymTab/Indexer.cc
===================================================================
--- src/SymTab/Indexer.cc	(revision 7c782aff4b836a71e18dd75c37d3b3e43582a5bc)
+++ src/SymTab/Indexer.cc	(revision 78d69da78fada5292d57db01609f0736fd71c895)
@@ -457,5 +457,5 @@
 
 		// add to indexer
-		tables->idTable[ name ][ mangleName ] = { decl, baseExpr, deleteStmt };
+		tables->idTable[ name ][ mangleName ] = IdData{ decl, baseExpr, deleteStmt };
 		++tables->size;
 	}
Index: src/SymTab/Indexer.h
===================================================================
--- src/SymTab/Indexer.h	(revision 7c782aff4b836a71e18dd75c37d3b3e43582a5bc)
+++ src/SymTab/Indexer.h	(revision 78d69da78fada5292d57db01609f0736fd71c895)
@@ -46,4 +46,8 @@
 			/// non-null if this declaration is deleted
 			BaseSyntaxNode * deleteStmt = nullptr;
+
+			// NOTE: shouldn't need either of these constructors, but gcc-4 does not properly support initializer lists with default members.
+			IdData() = default;
+			IdData( DeclarationWithType * id, Expression * baseExpr, BaseSyntaxNode * deleteStmt ) : id( id ), baseExpr( baseExpr ), deleteStmt( deleteStmt ) {}
 
 			Expression * combine() const;
