--- a/absyntax_utils/spec_init_separator.cc Sun Nov 30 12:49:42 2014 +0000
+++ b/absyntax_utils/spec_init_separator.cc Sat Dec 06 19:11:32 2014 +0000
@@ -74,11 +74,12 @@
/* B 1.1 - Letters, digits and identifiers */
/*******************************************/
// SYM_TOKEN(identifier_c)
-/* visitor for identifier_c is necessary because spec_init_sperator_c will be called to analyse PROGRAM identfiers,
- * which are still transformed into identfier_c, instead of a derived_datatype_identifier_c
- */
-void *spec_init_sperator_c::visit( identifier_c *symbol) {
- TRACE("spec_init_sperator_c::identifier_c");
+/* visitor for identifier_c should no longer be necessary. All references to derived datatypes are now stored in then */
+/* AST using either poutype_identifier_c or derived_datatype_identifier_c */
+void *spec_init_sperator_c::visit( identifier_c *symbol) { ERROR; return NULL;} /* should never occur */
+
+void *spec_init_sperator_c::visit( poutype_identifier_c *symbol) {
+ TRACE("spec_init_sperator_c::poutype_identifier_c");
switch (search_what) {
/* if we ever get called sith a simple identifier_c, then it must be a previously declared type... */
case search_spec: return symbol;
@@ -90,7 +91,7 @@
void *spec_init_sperator_c::visit(derived_datatype_identifier_c *symbol) {
- TRACE("spec_init_sperator_c::identifier_c");
+ TRACE("spec_init_sperator_c::derived_datatype_identifier_c");
switch (search_what) {
/* if we ever get called sith a simple identifier_c, then it must be a previously declared type... */
case search_spec: return symbol;
@@ -226,6 +227,7 @@
}
ERROR; /* should never occur */
return NULL;
+
}