Index: tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json
===================================================================
--- tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json	(revision 34d41ada587afb8f6a9602048dc551ba8bdfe531)
+++ tools/vscode/uwaterloo.cforall-0.1.0/syntaxes/cfa.tmLanguage.json	(revision 139a7e1f73b6c5ba763ff1d2f3fb21023e8d8393)
@@ -211,15 +211,15 @@
 				"declaration.aggregate": {
 					"patterns": [
-						{ "name": "storage.type.struct.cfa"   , "match": "(\\b|^|\\s)struct(\\s+\\w+)?(\\b|$|\\s)"   , "captures": { "2": { "name": "entity.name.type.struct.cfa"   }} },
-						{ "name": "storage.type.union.cfa"    , "match": "(\\b|^|\\s)union(\\s+\\w+)?(\\b|$|\\s)"    , "captures": { "2": { "name": "entity.name.type.union.cfa"    }} },
-						{ "name": "storage.type.enum.cfa"     , "match": "(\\b|^|\\s)enum(\\s+\\w+)?(\\b|$|\\s)"     , "captures": { "2": { "name": "entity.name.type.enum.cfa"     }} },
-						{ "name": "storage.type.trait.cfa"    , "match": "(\\b|^|\\s)trait(\\s+\\w+)?(\\b|$|\\s)"    , "captures": { "2": { "name": "entity.name.type.trait.cfa"    }} },
-						{ "name": "storage.type.generator.cfa", "match": "(\\b|^|\\s)generator(\\s+\\w+)?(\\b|$|\\s)", "captures": { "2": { "name": "entity.name.type.generator.cfa"}} },
-						{ "name": "storage.type.coroutine.cfa", "match": "(\\b|^|\\s)coroutine(\\s+\\w+)?(\\b|$|\\s)", "captures": { "2": { "name": "entity.name.type.coroutine.cfa"}} },
-						{ "name": "storage.type.thread.cfa"   , "match": "(\\b|^|\\s)thread(\\s+\\w+)?(\\b|$|\\s)"   , "captures": { "2": { "name": "entity.name.type.thread.cfa"   }} },
-						{ "name": "storage.type.monitor.cfa"  , "match": "(\\b|^|\\s)monitor(\\s+\\w+)?(\\b|$|\\s)"  , "captures": { "2": { "name": "entity.name.type.monitor.cfa"  }} },
-						{ "name": "storage.type.dtype.cfa"    , "match": "(\\b|^|\\s)dtype(\\s+\\w+)?(\\b|$|\\s)"    , "captures": { "2": { "name": "entity.name.type.dtype.cfa"    }} },
-						{ "name": "storage.type.otype.cfa"    , "match": "(\\b|^|\\s)otype(\\s+\\w+)?(\\b|$|\\s)"    , "captures": { "2": { "name": "entity.name.type.otype.cfa"    }} },
-						{ "name": "storage.type.ttype.cfa"    , "match": "(\\b|^|\\s)ttyp(\\s+\\w+)?(\\b|$|\\s)"     , "captures": { "2": { "name": "entity.name.type.ttype.cfa"    }} }
+						{ "name": "storage.type.struct.cfa"   , "match": "(\\b|^|\\s)struct(\\s+(\\w+))?(\\b|$|\\s)"   , "captures": { "3": { "name": "entity.name.type.struct.cfa"   }} },
+						{ "name": "storage.type.union.cfa"    , "match": "(\\b|^|\\s)union(\\s+(\\w+))?(\\b|$|\\s)"    , "captures": { "3": { "name": "entity.name.type.union.cfa"    }} },
+						{ "name": "storage.type.enum.cfa"     , "match": "(\\b|^|\\s)enum(\\s+(\\w+))?(\\b|$|\\s)"     , "captures": { "3": { "name": "entity.name.type.enum.cfa"     }} },
+						{ "name": "storage.type.trait.cfa"    , "match": "(\\b|^|\\s)trait(\\s+(\\w+))?(\\b|$|\\s)"    , "captures": { "3": { "name": "entity.name.type.trait.cfa"    }} },
+						{ "name": "storage.type.generator.cfa", "match": "(\\b|^|\\s)generator(\\s+(\\w+))?(\\b|$|\\s)", "captures": { "3": { "name": "entity.name.type.generator.cfa"}} },
+						{ "name": "storage.type.coroutine.cfa", "match": "(\\b|^|\\s)coroutine(\\s+(\\w+))?(\\b|$|\\s)", "captures": { "3": { "name": "entity.name.type.coroutine.cfa"}} },
+						{ "name": "storage.type.thread.cfa"   , "match": "(\\b|^|\\s)thread(\\s+(\\w+))?(\\b|$|\\s)"   , "captures": { "3": { "name": "entity.name.type.thread.cfa"   }} },
+						{ "name": "storage.type.monitor.cfa"  , "match": "(\\b|^|\\s)monitor(\\s+(\\w+))?(\\b|$|\\s)"  , "captures": { "3": { "name": "entity.name.type.monitor.cfa"  }} },
+						{ "name": "storage.type.dtype.cfa"    , "match": "(\\b|^|\\s)dtype(\\s+(\\w+))?(\\b|$|\\s)"    , "captures": { "3": { "name": "entity.name.type.dtype.cfa"    }} },
+						{ "name": "storage.type.otype.cfa"    , "match": "(\\b|^|\\s)otype(\\s+(\\w+))?(\\b|$|\\s)"    , "captures": { "3": { "name": "entity.name.type.otype.cfa"    }} },
+						{ "name": "storage.type.ttype.cfa"    , "match": "(\\b|^|\\s)ttyp(\\s+(\\w+))?(\\b|$|\\s)"     , "captures": { "3": { "name": "entity.name.type.ttype.cfa"    }} }
 					]
 				}
