pntool-developers Mailing List for A Concurrency Tool Suite (Page 7)
Brought to you by:
compaqdrew,
miordache
You can subscribe to this list here.
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(69) |
Jul
(86) |
Aug
(33) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2011 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(3) |
Jun
(1) |
Jul
(10) |
Aug
(2) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
From: <com...@us...> - 2009-06-28 23:42:57
|
Revision: 118 http://pntool.svn.sourceforge.net/pntool/?rev=118&view=rev Author: compaqdrew Date: 2009-06-28 23:42:53 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Cleaning up import paths Modified Paths: -------------- codegen/Makefile codegen/src/codegen.c codegen/src/codegen.xcodeproj/drew.mode1v3 codegen/src/codegen.xcodeproj/drew.pbxuser codegen/src/codegen.xcodeproj/project.pbxproj codegen/src/text.h Modified: codegen/Makefile =================================================================== --- codegen/Makefile 2009-06-28 21:52:56 UTC (rev 117) +++ codegen/Makefile 2009-06-28 23:42:53 UTC (rev 118) @@ -4,7 +4,7 @@ PNHEADERS = ../pnheaders/general.o ../pnheaders/matrix.o ../pnheaders/pns.o STANDALONE = src/main.o -OBJS = src/codegen.o src/plantCompiler.o src/supervisorCompiler.o src/petriNetSerializer.o src/text.o +OBJS = src/codegen.o src/plantCompiler.o src/supervisorCompiler.o src/petriNetSerializer.o src/text.o src/MakeGen.o B = \033[32m E = \033[0m @@ -24,14 +24,16 @@ static: $(OBJS) pnslib echo "$(B) Making pure codegen...$(E)" - $(COMPILER) -c $(OBJS) $(PNHEADERS) + $(COMPILER) -c $(OBJS) $(PNHEADERS) -I../pnheaders echo "$(B)Done$(E)" - +src/%.o : src/%.c + $(COMPILER) -I../pnheaders -o src/$*.o -c src/$*.c clean: echo "$(B)Cleaning...$(E)" rm -f $(OBJS) rm -f $(STANDALONE) rm -f codegen + rm -f compiled.Makefile echo "$(B)Done$(E)" distclean: clean echo "$(B)Making distclean...$(E)" Modified: codegen/src/codegen.c =================================================================== --- codegen/src/codegen.c 2009-06-28 21:52:56 UTC (rev 117) +++ codegen/src/codegen.c 2009-06-28 23:42:53 UTC (rev 118) @@ -12,7 +12,7 @@ #include "codegen.h" #include "supervisorCompiler.h" #include "plantCompiler.h" - +#include "MakeGen.h" #include "petriNetSerializer.h" @@ -31,6 +31,10 @@ //Compile Plants compileProcessArray(prarray, num); + + //Make makefile + //*****WARNING: THIS CALL MUTATES ITS ARGUMENTS BECAUSE I'M LAZY. CALL IT LAST!!! + makeMake(sname,prarray,num); }//End GenerateProgram Modified: codegen/src/codegen.xcodeproj/drew.mode1v3 =================================================================== --- codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 21:52:56 UTC (rev 117) +++ codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 23:42:53 UTC (rev 118) @@ -216,7 +216,7 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3AC8A5400FF81D7C00DE2863</string> + <string>3AC8A57E0FF827A900DE2863</string> <key>history</key> <array> <string>3A4754A90FF73DE300EE18BA</string> @@ -320,8 +320,7 @@ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <array> <array> - <integer>14</integer> - <integer>11</integer> + <integer>17</integer> <integer>3</integer> <integer>0</integer> </array> @@ -364,7 +363,7 @@ <key>PBXProjectModuleGUID</key> <string>1CE0B20306471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>supervisor_static_include.h</string> + <string>petriNetSerializer.h</string> <key>PBXSplitModuleInNavigatorKey</key> <dict> <key>Split0</key> @@ -372,11 +371,11 @@ <key>PBXProjectModuleGUID</key> <string>1CE0B20406471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>supervisor_static_include.h</string> + <string>petriNetSerializer.h</string> <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3AC8A53F0FF81D7C00DE2863</string> + <string>3AC8A57D0FF827A900DE2863</string> <key>history</key> <array> <string>3A7FCEED0FBC046D00EF8097</string> @@ -389,20 +388,22 @@ <string>3A5D84E40FCCAA6700465DF2</string> <string>3A62EEFF0FD5FF7900E60F50</string> <string>3A09E2E20FED6EEA003FAB0D</string> - <string>3AF91D640FF70813009F6B4F</string> <string>3AF91D650FF70813009F6B4F</string> <string>3AF91D660FF70813009F6B4F</string> <string>3AF91D670FF70813009F6B4F</string> - <string>3AF91D680FF70813009F6B4F</string> <string>3AF91D7E0FF708B2009F6B4F</string> <string>3AF91D7F0FF708B2009F6B4F</string> - <string>3AF91D880FF70933009F6B4F</string> - <string>3AF91D8B0FF70933009F6B4F</string> - <string>3AF91D960FF70AD3009F6B4F</string> <string>3A47543F0FF732C700EE18BA</string> - <string>3A4754400FF732C700EE18BA</string> <string>3A4754470FF7330D00EE18BA</string> - <string>3A4754A80FF73DE300EE18BA</string> + <string>3AC8A55F0FF827A900DE2863</string> + <string>3AC8A5600FF827A900DE2863</string> + <string>3AC8A5610FF827A900DE2863</string> + <string>3AC8A5620FF827A900DE2863</string> + <string>3AC8A5630FF827A900DE2863</string> + <string>3AC8A5640FF827A900DE2863</string> + <string>3AC8A5650FF827A900DE2863</string> + <string>3AC8A5660FF827A900DE2863</string> + <string>3AC8A5670FF827A900DE2863</string> </array> <key>prevStack</key> <array> @@ -430,6 +431,27 @@ <string>3AF91D6B0FF70813009F6B4F</string> <string>3AF91D6C0FF70813009F6B4F</string> <string>3A4754420FF732C700EE18BA</string> + <string>3AC8A5680FF827A900DE2863</string> + <string>3AC8A5690FF827A900DE2863</string> + <string>3AC8A56A0FF827A900DE2863</string> + <string>3AC8A56B0FF827A900DE2863</string> + <string>3AC8A56C0FF827A900DE2863</string> + <string>3AC8A56D0FF827A900DE2863</string> + <string>3AC8A56E0FF827A900DE2863</string> + <string>3AC8A56F0FF827A900DE2863</string> + <string>3AC8A5700FF827A900DE2863</string> + <string>3AC8A5710FF827A900DE2863</string> + <string>3AC8A5720FF827A900DE2863</string> + <string>3AC8A5730FF827A900DE2863</string> + <string>3AC8A5740FF827A900DE2863</string> + <string>3AC8A5750FF827A900DE2863</string> + <string>3AC8A5760FF827A900DE2863</string> + <string>3AC8A5770FF827A900DE2863</string> + <string>3AC8A5780FF827A900DE2863</string> + <string>3AC8A5790FF827A900DE2863</string> + <string>3AC8A57A0FF827A900DE2863</string> + <string>3AC8A57B0FF827A900DE2863</string> + <string>3AC8A57C0FF827A900DE2863</string> </array> </dict> <key>SplitCount</key> @@ -623,8 +645,10 @@ <integer>5</integer> <key>WindowOrderList</key> <array> + <string>1C530D57069F1CE1000CFCEE</string> <string>1CD10A99069EF8BA00B06720</string> <string>3ACFDCB10FDA81C200C504DE</string> + <string>3A232CB10FB21F7F00A5C7C2</string> <string>/Users/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> </array> <key>WindowString</key> @@ -651,7 +675,7 @@ <key>PBXProjectModuleGUID</key> <string>1CD0528F0623707200166675</string> <key>PBXProjectModuleLabel</key> - <string>supervisor_static_include.h</string> + <string>codegen.c</string> <key>StatusBarVisibility</key> <true/> </dict> @@ -660,7 +684,7 @@ <key>Frame</key> <string>{{0, 0}, {1280, 602}}</string> <key>RubberWindowFrame</key> - <string>560 -58 1280 855 0 0 1680 1028 </string> + <string>114 -351 1280 855 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXNavigatorGroup</string> @@ -684,7 +708,7 @@ <key>Frame</key> <string>{{0, 607}, {1280, 207}}</string> <key>RubberWindowFrame</key> - <string>560 -58 1280 855 0 0 1680 1028 </string> + <string>114 -351 1280 855 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXBuildResultsModule</string> @@ -707,14 +731,14 @@ <key>TableOfContents</key> <array> <string>3A232CB10FB21F7F00A5C7C2</string> - <string>3A4754380FF732B600EE18BA</string> + <string>3AC8A54F0FF827A700DE2863</string> <string>1CD0528F0623707200166675</string> <string>XCMainBuildResultsModuleGUID</string> </array> <key>ToolbarConfiguration</key> <string>xcode.toolbar.config.buildV3</string> <key>WindowString</key> - <string>560 -58 1280 855 0 0 1680 1028 </string> + <string>114 -351 1280 855 0 0 1280 1002 </string> <key>WindowToolGUID</key> <string>3A232CB10FB21F7F00A5C7C2</string> <key>WindowToolIsVisible</key> @@ -867,7 +891,7 @@ <key>PBXProjectModuleGUID</key> <string>1CDD528C0622207200134675</string> <key>PBXProjectModuleLabel</key> - <string>supervisor_static_include.h</string> + <string>MakeGen.h</string> <key>StatusBarVisibility</key> <true/> </dict> @@ -923,8 +947,8 @@ <key>TableOfContents</key> <array> <string>1C530D57069F1CE1000CFCEE</string> - <string>3A09E2FA0FED6F4E003FAB0D</string> - <string>3A09E2FB0FED6F4E003FAB0D</string> + <string>3AC8A55D0FF827A700DE2863</string> + <string>3AC8A55E0FF827A700DE2863</string> <string>1CDD528C0622207200134675</string> <string>1CD0528E0623707200166675</string> </array> Modified: codegen/src/codegen.xcodeproj/drew.pbxuser =================================================================== --- codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 21:52:56 UTC (rev 117) +++ codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 23:42:53 UTC (rev 118) @@ -206,6 +206,52 @@ 3AC8A53E0FF81D5E00DE2863 /* PBXTextBookmark */ = 3AC8A53E0FF81D5E00DE2863 /* PBXTextBookmark */; 3AC8A53F0FF81D7C00DE2863 /* PBXTextBookmark */ = 3AC8A53F0FF81D7C00DE2863 /* PBXTextBookmark */; 3AC8A5400FF81D7C00DE2863 /* PBXTextBookmark */ = 3AC8A5400FF81D7C00DE2863 /* PBXTextBookmark */; + 3AC8A54D0FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A54D0FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A54E0FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A54E0FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5510FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5510FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5520FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5520FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5530FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5530FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5540FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5540FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5550FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5550FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5560FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5560FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5570FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5570FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5580FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5580FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A5590FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A5590FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A55A0FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A55A0FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A55B0FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A55B0FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A55C0FF827A700DE2863 /* PBXTextBookmark */ = 3AC8A55C0FF827A700DE2863 /* PBXTextBookmark */; + 3AC8A55F0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A55F0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5600FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5600FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5610FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5610FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5620FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5620FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5630FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5630FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5640FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5640FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5650FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5650FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5660FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5660FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5670FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5670FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5680FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5680FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5690FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5690FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A56A0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A56A0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A56B0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A56B0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A56C0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A56C0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A56D0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A56D0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A56E0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A56E0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A56F0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A56F0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5700FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5700FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5710FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5710FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5720FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5720FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5730FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5730FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5740FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5740FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5750FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5750FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5760FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5760FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5770FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5770FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5780FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5780FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A5790FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A5790FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A57A0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A57A0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A57B0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A57B0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A57C0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A57C0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A57D0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A57D0FF827A900DE2863 /* PBXTextBookmark */; + 3AC8A57E0FF827A900DE2863 /* PBXTextBookmark */ = 3AC8A57E0FF827A900DE2863 /* PBXTextBookmark */; 3AEAF9100FB2697C00D61E73 = 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */; 3AEAF9120FB2697C00D61E73 = 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */; 3AEAF9130FB2697C00D61E73 = 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */; @@ -246,9 +292,9 @@ }; 08FB7796FE84155DC02AAC07 /* main.c */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 980}}"; - sepNavSelRange = "{1682, 0}"; - sepNavVisRange = "{0, 1463}"; + sepNavIntBoundsRect = "{{0, 0}, {1025, 980}}"; + sepNavSelRange = "{29, 0}"; + sepNavVisRange = "{0, 971}"; sepNavWindowFrame = "{{199, 162}, {1027, 575}}"; }; }; @@ -490,16 +536,16 @@ }; 3A232C820FB21E0600A5C7C2 /* codegen.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 626}}"; - sepNavSelRange = "{213, 16}"; - sepNavVisRange = "{0, 747}"; + sepNavIntBoundsRect = "{{0, 0}, {1025, 418}}"; + sepNavSelRange = "{213, 0}"; + sepNavVisRange = "{0, 732}"; }; }; 3A232C830FB21E0600A5C7C2 /* codegen.c */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 756}}"; - sepNavSelRange = "{374, 58}"; - sepNavVisRange = "{29, 1073}"; + sepNavIntBoundsRect = "{{0, 0}, {1219, 826}}"; + sepNavSelRange = "{413, 39}"; + sepNavVisRange = "{110, 958}"; sepNavWindowFrame = "{{-826, 332}, {750, 558}}"; }; }; @@ -536,8 +582,8 @@ 3A232D0B0FB22F3300A5C7C2 /* petriNetSerializer.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1011, 626}}"; - sepNavSelRange = "{277, 0}"; - sepNavVisRange = "{0, 932}"; + sepNavSelRange = "{261, 0}"; + sepNavVisRange = "{0, 916}"; sepNavWindowFrame = "{{61, 397}, {750, 558}}"; }; }; @@ -601,9 +647,9 @@ }; 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 2698}}"; + sepNavIntBoundsRect = "{{0, 0}, {1011, 2702}}"; sepNavSelRange = "{0, 0}"; - sepNavVisRange = "{0, 1511}"; + sepNavVisRange = "{2909, 1078}"; }; }; 3A47543F0FF732C700EE18BA /* PBXTextBookmark */ = { @@ -1695,7 +1741,7 @@ }; 3A752B7D0FE6A2B300091C76 /* pns.c */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 18676}}"; + sepNavIntBoundsRect = "{{0, 0}, {1011, 18732}}"; sepNavSelRange = "{0, 0}"; sepNavVisRange = "{0, 1093}"; }; @@ -1829,8 +1875,8 @@ 3A99A5B50FB8C45B00B1F47C /* text.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1011, 626}}"; - sepNavSelRange = "{266, 0}"; - sepNavVisRange = "{0, 659}"; + sepNavSelRange = "{250, 0}"; + sepNavVisRange = "{0, 643}"; }; }; 3A99A5B60FB8C45B00B1F47C /* text.c */ = { @@ -1877,7 +1923,7 @@ }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {968, 9296}}"; + sepNavIntBoundsRect = "{{0, 0}, {968, 9310}}"; sepNavSelRange = "{11644, 0}"; sepNavVisRange = "{6344, 1249}"; sepNavWindowFrame = "{{130, 91}, {1027, 911}}"; @@ -1980,11 +2026,477 @@ vrLen = 1249; vrLoc = 6344; }; + 3AC8A5430FF81EE900DE2863 /* MakeGen.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1025, 418}}"; + sepNavSelRange = "{140, 0}"; + sepNavVisRange = "{0, 202}"; + }; + }; + 3AC8A5440FF81EE900DE2863 /* MakeGen.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1011, 770}}"; + sepNavSelRange = "{421, 0}"; + sepNavVisRange = "{131, 1137}"; + }; + }; + 3AC8A54D0FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + comments = "error: 'mak' undeclared (first use in this function)"; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + rLen = 1; + rLoc = 38; + rType = 1; + }; + 3AC8A54E0FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + name = "codegen.c: 19"; + rLen = 39; + rLoc = 413; + rType = 0; + vrLen = 958; + vrLoc = 110; + }; + 3AC8A5510FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232D0B0FB22F3300A5C7C2 /* petriNetSerializer.h */; + name = "petriNetSerializer.h: 11"; + rLen = 0; + rLoc = 261; + rType = 0; + vrLen = 916; + vrLoc = 0; + }; + 3AC8A5520FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C820FB21E0600A5C7C2 /* codegen.h */; + name = "codegen.h: 10"; + rLen = 0; + rLoc = 213; + rType = 0; + vrLen = 732; + vrLoc = 0; + }; + 3AC8A5530FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* main.c */; + name = "main.c: 2"; + rLen = 0; + rLoc = 29; + rType = 0; + vrLen = 971; + vrLoc = 0; + }; + 3AC8A5540FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEE0D6E0FB3AA4900248D5F /* plantCompiler.h */; + name = "plantCompiler.h: 15"; + rLen = 0; + rLoc = 234; + rType = 0; + vrLen = 624; + vrLoc = 0; + }; + 3AC8A5550FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */; + name = "supervisorCompiler.h: 8"; + rLen = 0; + rLoc = 122; + rType = 0; + vrLen = 244; + vrLoc = 0; + }; + 3AC8A5560FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + rLen = 0; + rLoc = 140; + rType = 0; + }; + 3AC8A5570FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232D0B0FB22F3300A5C7C2 /* petriNetSerializer.h */; + name = "petriNetSerializer.h: 11"; + rLen = 0; + rLoc = 261; + rType = 0; + vrLen = 916; + vrLoc = 0; + }; + 3AC8A5580FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C820FB21E0600A5C7C2 /* codegen.h */; + name = "codegen.h: 10"; + rLen = 0; + rLoc = 213; + rType = 0; + vrLen = 732; + vrLoc = 0; + }; + 3AC8A5590FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* main.c */; + name = "main.c: 2"; + rLen = 0; + rLoc = 29; + rType = 0; + vrLen = 971; + vrLoc = 0; + }; + 3AC8A55A0FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEE0D6E0FB3AA4900248D5F /* plantCompiler.h */; + name = "plantCompiler.h: 15"; + rLen = 0; + rLoc = 234; + rType = 0; + vrLen = 624; + vrLoc = 0; + }; + 3AC8A55B0FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */; + name = "supervisorCompiler.h: 8"; + rLen = 0; + rLoc = 122; + rType = 0; + vrLen = 244; + vrLoc = 0; + }; + 3AC8A55C0FF827A700DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 9"; + rLen = 0; + rLoc = 140; + rType = 0; + vrLen = 202; + vrLoc = 0; + }; + 3AC8A55F0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 9"; + rLen = 0; + rLoc = 146; + rType = 0; + vrLen = 218; + vrLoc = 0; + }; + 3AC8A5600FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */; + name = "supervisorCompiler.h: 8"; + rLen = 0; + rLoc = 138; + rType = 0; + vrLen = 260; + vrLoc = 0; + }; + 3AC8A5610FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; + name = "supervisorCompiler.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1078; + vrLoc = 2909; + }; + 3AC8A5620FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 649; + rType = 0; + vrLen = 1135; + vrLoc = 0; + }; + 3AC8A5630FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + name = "codegen.c: 36"; + rLen = 0; + rLoc = 913; + rType = 0; + vrLen = 1049; + vrLoc = 241; + }; + 3AC8A5640FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5440FF81EE900DE2863 /* MakeGen.c */; + name = "MakeGen.c: 20"; + rLen = 0; + rLoc = 421; + rType = 0; + vrLen = 1137; + vrLoc = 131; + }; + 3AC8A5650FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A752B7D0FE6A2B300091C76 /* pns.c */; + name = "pns.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1093; + vrLoc = 0; + }; + 3AC8A5660FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; + name = "text.h: 14"; + rLen = 0; + rLoc = 250; + rType = 0; + vrLen = 643; + vrLoc = 0; + }; + 3AC8A5670FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232D0B0FB22F3300A5C7C2 /* petriNetSerializer.h */; + rLen = 6; + rLoc = 261; + rType = 0; + }; + 3AC8A5680FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 649; + rType = 0; + vrLen = 1135; + vrLoc = 0; + }; + 3AC8A5690FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; + name = "supervisorCompiler.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1078; + vrLoc = 2909; + }; + 3AC8A56A0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + name = "codegen.c: 35"; + rLen = 0; + rLoc = 932; + rType = 0; + vrLen = 843; + vrLoc = 321; + }; + 3AC8A56B0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 10"; + rLen = 55; + rLoc = 147; + rType = 0; + vrLen = 164; + vrLoc = 0; + }; + 3AC8A56C0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + name = "codegen.c: 35"; + rLen = 0; + rLoc = 960; + rType = 0; + vrLen = 1020; + vrLoc = 110; + }; + 3AC8A56D0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 10"; + rLen = 0; + rLoc = 202; + rType = 0; + vrLen = 164; + vrLoc = 0; + }; + 3AC8A56E0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + name = "codegen.c: 37"; + rLen = 23; + rLoc = 966; + rType = 0; + vrLen = 929; + vrLoc = 110; + }; + 3AC8A56F0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 10"; + rLen = 0; + rLoc = 202; + rType = 0; + vrLen = 186; + vrLoc = 0; + }; + 3AC8A5700FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5440FF81EE900DE2863 /* MakeGen.c */; + name = "MakeGen.c: 12"; + rLen = 0; + rLoc = 470; + rType = 0; + vrLen = 192; + vrLoc = 0; + }; + 3AC8A5710FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 10"; + rLen = 55; + rLoc = 147; + rType = 0; + vrLen = 186; + vrLoc = 0; + }; + 3AC8A5720FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5440FF81EE900DE2863 /* MakeGen.c */; + name = "MakeGen.c: 14"; + rLen = 0; + rLoc = 1268; + rType = 0; + vrLen = 211; + vrLoc = 0; + }; + 3AC8A5730FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5430FF81EE900DE2863 /* MakeGen.h */; + name = "MakeGen.h: 9"; + rLen = 0; + rLoc = 146; + rType = 0; + vrLen = 218; + vrLoc = 0; + }; + 3AC8A5740FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5440FF81EE900DE2863 /* MakeGen.c */; + name = "MakeGen.c: 19"; + rLen = 0; + rLoc = 784; + rType = 0; + vrLen = 449; + vrLoc = 0; + }; + 3AC8A5750FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; + name = "supervisorCompiler.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1078; + vrLoc = 2909; + }; + 3AC8A5760FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */; + name = "supervisorCompiler.h: 8"; + rLen = 0; + rLoc = 138; + rType = 0; + vrLen = 260; + vrLoc = 0; + }; + 3AC8A5770FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; + name = "supervisorCompiler.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1078; + vrLoc = 2909; + }; + 3AC8A5780FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 649; + rType = 0; + vrLen = 1135; + vrLoc = 0; + }; + 3AC8A5790FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; + name = "codegen.c: 36"; + rLen = 0; + rLoc = 913; + rType = 0; + vrLen = 1049; + vrLoc = 241; + }; + 3AC8A57A0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AC8A5440FF81EE900DE2863 /* MakeGen.c */; + name = "MakeGen.c: 20"; + rLen = 0; + rLoc = 421; + rType = 0; + vrLen = 1137; + vrLoc = 131; + }; + 3AC8A57B0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A752B7D0FE6A2B300091C76 /* pns.c */; + name = "pns.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1093; + vrLoc = 0; + }; + 3AC8A57C0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; + name = "text.h: 14"; + rLen = 0; + rLoc = 250; + rType = 0; + vrLen = 643; + vrLoc = 0; + }; + 3AC8A57D0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A232D0B0FB22F3300A5C7C2 /* petriNetSerializer.h */; + name = "petriNetSerializer.h: 11"; + rLen = 0; + rLoc = 261; + rType = 0; + vrLen = 916; + vrLoc = 0; + }; + 3AC8A57E0FF827A900DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 471"; + rLen = 0; + rLoc = 11644; + rType = 0; + vrLen = 1249; + vrLoc = 6344; + }; 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 626}}"; - sepNavSelRange = "{138, 0}"; - sepNavVisRange = "{0, 260}"; + sepNavIntBoundsRect = "{{0, 0}, {1025, 418}}"; + sepNavSelRange = "{122, 0}"; + sepNavVisRange = "{0, 244}"; sepNavWindowFrame = "{{721, 160}, {981, 639}}"; }; }; @@ -2053,9 +2565,9 @@ }; 3AEE0D6E0FB3AA4900248D5F /* plantCompiler.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1011, 3304}}"; - sepNavSelRange = "{280, 0}"; - sepNavVisRange = "{0, 1105}"; + sepNavIntBoundsRect = "{{0, 0}, {1025, 3332}}"; + sepNavSelRange = "{234, 0}"; + sepNavVisRange = "{0, 624}"; sepNavWindowFrame = "{{-987, 164}, {981, 639}}"; }; }; @@ -2168,7 +2680,7 @@ fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; name = "codegen.c: 19"; rLen = 58; - rLoc = 374; + rLoc = 394; rType = 0; vrLen = 1073; vrLoc = 29; @@ -2218,7 +2730,7 @@ fRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; name = "codegen.c: 19"; rLen = 58; - rLoc = 374; + rLoc = 394; rType = 0; vrLen = 1073; vrLoc = 29; @@ -2358,7 +2870,7 @@ fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; name = "text.h: 14"; rLen = 0; - rLoc = 266; + rLoc = 250; rType = 0; vrLen = 659; vrLoc = 0; @@ -2368,7 +2880,7 @@ fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; name = "text.h: 14"; rLen = 0; - rLoc = 266; + rLoc = 250; rType = 0; vrLen = 659; vrLoc = 0; Modified: codegen/src/codegen.xcodeproj/project.pbxproj =================================================================== --- codegen/src/codegen.xcodeproj/project.pbxproj 2009-06-28 21:52:56 UTC (rev 117) +++ codegen/src/codegen.xcodeproj/project.pbxproj 2009-06-28 23:42:53 UTC (rev 118) @@ -15,6 +15,7 @@ 3A752B800FE6A2B300091C76 /* matrix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A752B7A0FE6A2B300091C76 /* matrix.c */; }; 3A752B820FE6A2B300091C76 /* pns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A752B7D0FE6A2B300091C76 /* pns.c */; }; 3A99A5B70FB8C45B00B1F47C /* text.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; }; + 3AC8A5450FF81EE900DE2863 /* MakeGen.c in Sources */ = {isa = PBXBuildFile; fileRef = 3AC8A5440FF81EE900DE2863 /* MakeGen.c */; }; 3AEE0D6F0FB3AA4900248D5F /* plantCompiler.c in Sources */ = {isa = PBXBuildFile; fileRef = 3AEE0D6D0FB3AA4900248D5F /* plantCompiler.c */; }; 8DD76FB00486AB0100D96B5E /* codegen.1 in CopyFiles */ = {isa = PBXBuildFile; fileRef = C6A0FF2C0290799A04C91782 /* codegen.1 */; }; /* End PBXBuildFile section */ @@ -49,6 +50,8 @@ 3A99A5B60FB8C45B00B1F47C /* text.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = text.c; sourceTree = "<group>"; }; 3A99A6160FB8D70200B1F47C /* pn1PCode.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = pn1PCode.txt; sourceTree = "<group>"; }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = supervisor_static_include.h; sourceTree = "<group>"; }; + 3AC8A5430FF81EE900DE2863 /* MakeGen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MakeGen.h; sourceTree = "<group>"; }; + 3AC8A5440FF81EE900DE2863 /* MakeGen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MakeGen.c; sourceTree = "<group>"; }; 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = supervisorCompiler.h; sourceTree = "<group>"; }; 3AEE0D6D0FB3AA4900248D5F /* plantCompiler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = plantCompiler.c; sourceTree = "<group>"; }; 3AEE0D6E0FB3AA4900248D5F /* plantCompiler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = plantCompiler.h; sourceTree = "<group>"; }; @@ -81,6 +84,8 @@ 08FB7795FE84155DC02AAC07 /* Source */ = { isa = PBXGroup; children = ( + 3AC8A5430FF81EE900DE2863 /* MakeGen.h */, + 3AC8A5440FF81EE900DE2863 /* MakeGen.c */, 3A752B770FE6A2B300091C76 /* pnheaders */, 3A99A78A0FB8F1F700B1F47C /* Supervisor */, 3A99A5B50FB8C45B00B1F47C /* text.h */, @@ -196,6 +201,7 @@ 3A752B800FE6A2B300091C76 /* matrix.c in Sources */, 3A752B820FE6A2B300091C76 /* pns.c in Sources */, 3A4754350FF732AB00EE18BA /* supervisorCompiler.c in Sources */, + 3AC8A5450FF81EE900DE2863 /* MakeGen.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; Modified: codegen/src/text.h =================================================================== --- codegen/src/text.h 2009-06-28 21:52:56 UTC (rev 117) +++ codegen/src/text.h 2009-06-28 23:42:53 UTC (rev 118) @@ -11,7 +11,7 @@ * Ask Dr. Iordache to move text struct definition to text.h */ -#include "../../pnheaders/pns.h" +#include "pns.h" //This can be used to create a text structure defined in pns.h This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <com...@us...> - 2009-06-28 21:53:03
|
Revision: 117 http://pntool.svn.sourceforge.net/pntool/?rev=117&view=rev Author: compaqdrew Date: 2009-06-28 21:52:56 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Demo up and working. Not sending duplicate firemsgs. Modified Paths: -------------- codegen/src/codegen.xcodeproj/drew.mode1v3 codegen/src/codegen.xcodeproj/drew.pbxuser codegen/src/supervisor_static_include.h Modified: codegen/src/codegen.xcodeproj/drew.mode1v3 =================================================================== --- codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:07:50 UTC (rev 116) +++ codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 21:52:56 UTC (rev 117) @@ -216,10 +216,10 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A4754A90FF73DE300EE18BA</string> + <string>3AC8A5400FF81D7C00DE2863</string> <key>history</key> <array> - <string>3AF91D9B0FF711D9009F6B4F</string> + <string>3A4754A90FF73DE300EE18BA</string> </array> </dict> <key>SplitCount</key> @@ -235,7 +235,7 @@ <key>PBXModuleWindowStatusBarHidden2</key> <false/> <key>RubberWindowFrame</key> - <string>336 173 1027 855 0 0 1680 1028 </string> + <string>130 147 1027 855 0 0 1280 1002 </string> </dict> </dict> </array> @@ -346,7 +346,7 @@ <real>186</real> </array> <key>RubberWindowFrame</key> - <string>-4 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXSmartGroupTreeModule</string> @@ -376,7 +376,7 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A4754A80FF73DE300EE18BA</string> + <string>3AC8A53F0FF81D7C00DE2863</string> <key>history</key> <array> <string>3A7FCEED0FBC046D00EF8097</string> @@ -402,7 +402,7 @@ <string>3A47543F0FF732C700EE18BA</string> <string>3A4754400FF732C700EE18BA</string> <string>3A4754470FF7330D00EE18BA</string> - <string>3A47546B0FF7361D00EE18BA</string> + <string>3A4754A80FF73DE300EE18BA</string> </array> <key>prevStack</key> <array> @@ -429,9 +429,7 @@ <string>3AF91D6A0FF70813009F6B4F</string> <string>3AF91D6B0FF70813009F6B4F</string> <string>3AF91D6C0FF70813009F6B4F</string> - <string>3A4754410FF732C700EE18BA</string> <string>3A4754420FF732C700EE18BA</string> - <string>3A4754480FF7330D00EE18BA</string> </array> </dict> <key>SplitCount</key> @@ -445,7 +443,7 @@ <key>Frame</key> <string>{{0, 0}, {1072, 658}}</string> <key>RubberWindowFrame</key> - <string>-4 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXNavigatorGroup</string> @@ -465,7 +463,7 @@ <key>Frame</key> <string>{{0, 663}, {1072, 152}}</string> <key>RubberWindowFrame</key> - <string>-4 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> </dict> <key>Module</key> <string>XCDetailModule</string> @@ -489,9 +487,9 @@ </array> <key>TableOfContents</key> <array> - <string>3A4754440FF732C700EE18BA</string> + <string>3AC8A5340FF81CB200DE2863</string> <string>1CE0B1FE06471DED0097A5F4</string> - <string>3A4754450FF732C700EE18BA</string> + <string>3AC8A5350FF81CB200DE2863</string> <string>1CE0B20306471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string> </array> @@ -627,11 +625,10 @@ <array> <string>1CD10A99069EF8BA00B06720</string> <string>3ACFDCB10FDA81C200C504DE</string> - <string>3A232CB10FB21F7F00A5C7C2</string> - <string>/Volumes/y/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> + <string>/Users/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> </array> <key>WindowString</key> - <string>-4 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> <key>WindowToolsV3</key> <array> <dict> @@ -804,10 +801,10 @@ <key>Frame</key> <string>{{456, 0}, {544, 297}}</string> <key>RubberWindowFrame</key> - <string>420 408 1000 597 0 0 1680 1028 </string> + <string>173 384 1000 597 0 0 1280 1002 </string> </dict> <key>RubberWindowFrame</key> - <string>420 408 1000 597 0 0 1680 1028 </string> + <string>173 384 1000 597 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXDebugSessionModule</string> @@ -830,18 +827,18 @@ <key>TableOfContents</key> <array> <string>1CD10A99069EF8BA00B06720</string> - <string>3A4754390FF732B600EE18BA</string> + <string>3AC8A5370FF81CB200DE2863</string> <string>1C162984064C10D400B95A72</string> - <string>3A47543A0FF732B600EE18BA</string> - <string>3A47543B0FF732B600EE18BA</string> - <string>3A47543C0FF732B600EE18BA</string> - <string>3A47543D0FF732B600EE18BA</string> - <string>3A47543E0FF732B600EE18BA</string> + <string>3AC8A5380FF81CB200DE2863</string> + <string>3AC8A5390FF81CB200DE2863</string> + <string>3AC8A53A0FF81CB200DE2863</string> + <string>3AC8A53B0FF81CB200DE2863</string> + <string>3AC8A53C0FF81CB200DE2863</string> </array> <key>ToolbarConfiguration</key> <string>xcode.toolbar.config.debugV3</string> <key>WindowString</key> - <string>420 408 1000 597 0 0 1680 1028 </string> + <string>173 384 1000 597 0 0 1280 1002 </string> <key>WindowToolGUID</key> <string>1CD10A99069EF8BA00B06720</string> <key>WindowToolIsVisible</key> Modified: codegen/src/codegen.xcodeproj/drew.pbxuser =================================================================== --- codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:07:50 UTC (rev 116) +++ codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 21:52:56 UTC (rev 117) @@ -17,15 +17,15 @@ 3A3A77E70FC891BD00DB2D28 /* petriNetSerializer.c:33 */, 3A3A783D0FC894C600DB2D28 /* supervisorCompler.c:116 */, 3A13FC180FDA5F3C0051F833 /* supervisorCompler.c:176 */, - 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:298 */, - 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:291 */, + 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:310 */, + 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:303 */, 3A13FC250FDA5FBA0051F833 /* supervisorCompler.c:174 */, - 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:314 */, - 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:289 */, - 3A13FC750FDA64190051F833 /* supervisor_static_include.h:327 */, - 3A13FC780FDA64220051F833 /* supervisor_static_include.h:320 */, - 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:329 */, - 3A13FC830FDA66170051F833 /* supervisor_static_include.h:322 */, + 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:326 */, + 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:301 */, + 3A13FC750FDA64190051F833 /* supervisor_static_include.h:339 */, + 3A13FC780FDA64220051F833 /* supervisor_static_include.h:332 */, + 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:341 */, + 3A13FC830FDA66170051F833 /* supervisor_static_include.h:334 */, ); codeSenseManager = 3A232C630FB214E900A5C7C2 /* Code sense */; executables = ( @@ -76,8 +76,8 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 267858581; - PBXWorkspaceStateSaveDate = 267858581; + PBXPerProjectTemplateStateSaveDate = 267918248; + PBXWorkspaceStateSaveDate = 267918248; }; perUserProjectItems = { 3A09E2E10FED6EEA003FAB0D = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; @@ -86,101 +86,101 @@ 3A232C980FB21F7F00A5C7C2 = 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */; 3A232CA00FB21F7F00A5C7C2 = 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */; 3A232CA10FB21F7F00A5C7C2 = 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A47543F0FF732C700EE18BA /* PBXTextBookmark */ = 3A47543F0FF732C700EE18BA /* PBXTextBookmark */; - 3A4754400FF732C700EE18BA /* PBXTextBookmark */ = 3A4754400FF732C700EE18BA /* PBXTextBookmark */; - 3A4754410FF732C700EE18BA /* PBXTextBookmark */ = 3A4754410FF732C700EE18BA /* PBXTextBookmark */; - 3A4754420FF732C700EE18BA /* PBXTextBookmark */ = 3A4754420FF732C700EE18BA /* PBXTextBookmark */; - 3A4754430FF732C700EE18BA /* PBXTextBookmark */ = 3A4754430FF732C700EE18BA /* PBXTextBookmark */; - 3A4754460FF732C700EE18BA /* PBXTextBookmark */ = 3A4754460FF732C700EE18BA /* PBXTextBookmark */; - 3A4754470FF7330D00EE18BA /* PBXTextBookmark */ = 3A4754470FF7330D00EE18BA /* PBXTextBookmark */; - 3A4754480FF7330D00EE18BA /* PBXTextBookmark */ = 3A4754480FF7330D00EE18BA /* PBXTextBookmark */; - 3A4754490FF7330D00EE18BA /* PBXTextBookmark */ = 3A4754490FF7330D00EE18BA /* PBXTextBookmark */; - 3A47544A0FF7330D00EE18BA /* PBXTextBookmark */ = 3A47544A0FF7330D00EE18BA /* PBXTextBookmark */; - 3A47544C0FF7335F00EE18BA /* PBXTextBookmark */ = 3A47544C0FF7335F00EE18BA /* PBXTextBookmark */; - 3A47544D0FF7335F00EE18BA /* PBXTextBookmark */ = 3A47544D0FF7335F00EE18BA /* PBXTextBookmark */; - 3A47544E0FF7337500EE18BA /* PBXTextBookmark */ = 3A47544E0FF7337500EE18BA /* PBXTextBookmark */; - 3A47544F0FF7337500EE18BA /* PBXTextBookmark */ = 3A47544F0FF7337500EE18BA /* PBXTextBookmark */; - 3A4754500FF733C400EE18BA /* PBXTextBookmark */ = 3A4754500FF733C400EE18BA /* PBXTextBookmark */; - 3A4754510FF733C400EE18BA /* PBXTextBookmark */ = 3A4754510FF733C400EE18BA /* PBXTextBookmark */; - 3A4754520FF7340100EE18BA /* PBXTextBookmark */ = 3A4754520FF7340100EE18BA /* PBXTextBookmark */; - 3A4754530FF7340100EE18BA /* PBXTextBookmark */ = 3A4754530FF7340100EE18BA /* PBXTextBookmark */; - 3A4754540FF7346300EE18BA /* PBXTextBookmark */ = 3A4754540FF7346300EE18BA /* PBXTextBookmark */; - 3A4754550FF7346300EE18BA /* PBXTextBookmark */ = 3A4754550FF7346300EE18BA /* PBXTextBookmark */; - 3A4754560FF7347100EE18BA /* PBXTextBookmark */ = 3A4754560FF7347100EE18BA /* PBXTextBookmark */; - 3A4754570FF7347100EE18BA /* PBXTextBookmark */ = 3A4754570FF7347100EE18BA /* PBXTextBookmark */; - 3A47545A0FF7348000EE18BA /* PBXTextBookmark */ = 3A47545A0FF7348000EE18BA /* PBXTextBookmark */; - 3A47545B0FF7348000EE18BA /* PBXTextBookmark */ = 3A47545B0FF7348000EE18BA /* PBXTextBookmark */; - 3A47545D0FF734FD00EE18BA /* PBXTextBookmark */ = 3A47545D0FF734FD00EE18BA /* PBXTextBookmark */; - 3A47545E0FF734FD00EE18BA /* PBXTextBookmark */ = 3A47545E0FF734FD00EE18BA /* PBXTextBookmark */; - 3A47545F0FF7351000EE18BA /* PBXTextBookmark */ = 3A47545F0FF7351000EE18BA /* PBXTextBookmark */; - 3A4754600FF7351000EE18BA /* PBXTextBookmark */ = 3A4754600FF7351000EE18BA /* PBXTextBookmark */; - 3A4754610FF7353C00EE18BA /* PBXTextBookmark */ = 3A4754610FF7353C00EE18BA /* PBXTextBookmark */; - 3A4754620FF7353C00EE18BA /* PBXTextBookmark */ = 3A4754620FF7353C00EE18BA /* PBXTextBookmark */; - 3A4754630FF7355500EE18BA /* PBXTextBookmark */ = 3A4754630FF7355500EE18BA /* PBXTextBookmark */; - 3A4754640FF7355500EE18BA /* PBXTextBookmark */ = 3A4754640FF7355500EE18BA /* PBXTextBookmark */; - 3A4754650FF7356E00EE18BA /* PBXTextBookmark */ = 3A4754650FF7356E00EE18BA /* PBXTextBookmark */; - 3A4754660FF7356E00EE18BA /* PBXTextBookmark */ = 3A4754660FF7356E00EE18BA /* PBXTextBookmark */; - 3A4754670FF7358300EE18BA /* PBXTextBookmark */ = 3A4754670FF7358300EE18BA /* PBXTextBookmark */; - 3A4754680FF7358300EE18BA /* PBXTextBookmark */ = 3A4754680FF7358300EE18BA /* PBXTextBookmark */; - 3A47546B0FF7361D00EE18BA /* PBXTextBookmark */ = 3A47546B0FF7361D00EE18BA /* PBXTextBookmark */; - 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */ = 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */; - 3A47546D0FF7361D00EE18BA /* PBXTextBookmark */ = 3A47546D0FF7361D00EE18BA /* PBXTextBookmark */; - 3A47546E0FF7367500EE18BA /* PBXTextBookmark */ = 3A47546E0FF7367500EE18BA /* PBXTextBookmark */; - 3A47546F0FF7367500EE18BA /* PBXTextBookmark */ = 3A47546F0FF7367500EE18BA /* PBXTextBookmark */; - 3A4754700FF736B800EE18BA /* PBXTextBookmark */ = 3A4754700FF736B800EE18BA /* PBXTextBookmark */; - 3A4754710FF736B800EE18BA /* PBXTextBookmark */ = 3A4754710FF736B800EE18BA /* PBXTextBookmark */; - 3A4754720FF7373E00EE18BA /* PBXTextBookmark */ = 3A4754720FF7373E00EE18BA /* PBXTextBookmark */; - 3A4754730FF7373E00EE18BA /* PBXTextBookmark */ = 3A4754730FF7373E00EE18BA /* PBXTextBookmark */; - 3A4754740FF7375A00EE18BA /* PBXTextBookmark */ = 3A4754740FF7375A00EE18BA /* PBXTextBookmark */; - 3A4754750FF7375A00EE18BA /* PBXTextBookmark */ = 3A4754750FF7375A00EE18BA /* PBXTextBookmark */; - 3A4754760FF7379600EE18BA /* PBXTextBookmark */ = 3A4754760FF7379600EE18BA /* PBXTextBookmark */; - 3A4754770FF7379600EE18BA /* PBXTextBookmark */ = 3A4754770FF7379600EE18BA /* PBXTextBookmark */; - 3A4754780FF737DF00EE18BA /* PBXTextBookmark */ = 3A4754780FF737DF00EE18BA /* PBXTextBookmark */; - 3A4754790FF737DF00EE18BA /* PBXTextBookmark */ = 3A4754790FF737DF00EE18BA /* PBXTextBookmark */; - 3A47547A0FF7387000EE18BA /* PBXTextBookmark */ = 3A47547A0FF7387000EE18BA /* PBXTextBookmark */; - 3A47547B0FF7387000EE18BA /* PBXTextBookmark */ = 3A47547B0FF7387000EE18BA /* PBXTextBookmark */; - 3A47547C0FF738A200EE18BA /* PBXTextBookmark */ = 3A47547C0FF738A200EE18BA /* PBXTextBookmark */; - 3A47547D0FF738A200EE18BA /* PBXTextBookmark */ = 3A47547D0FF738A200EE18BA /* PBXTextBookmark */; - 3A47547E0FF738B400EE18BA /* PBXTextBookmark */ = 3A47547E0FF738B400EE18BA /* PBXTextBookmark */; - 3A47547F0FF738B400EE18BA /* PBXTextBookmark */ = 3A47547F0FF738B400EE18BA /* PBXTextBookmark */; - 3A4754800FF7393F00EE18BA /* PBXTextBookmark */ = 3A4754800FF7393F00EE18BA /* PBXTextBookmark */; - 3A4754810FF7393F00EE18BA /* PBXTextBookmark */ = 3A4754810FF7393F00EE18BA /* PBXTextBookmark */; - 3A4754820FF7395900EE18BA /* PBXTextBookmark */ = 3A4754820FF7395900EE18BA /* PBXTextBookmark */; - 3A4754830FF7395900EE18BA /* PBXTextBookmark */ = 3A4754830FF7395900EE18BA /* PBXTextBookmark */; - 3A4754840FF7397700EE18BA /* PBXTextBookmark */ = 3A4754840FF7397700EE18BA /* PBXTextBookmark */; - 3A4754850FF7397700EE18BA /* PBXTextBookmark */ = 3A4754850FF7397700EE18BA /* PBXTextBookmark */; - 3A4754860FF739C800EE18BA /* PBXTextBookmark */ = 3A4754860FF739C800EE18BA /* PBXTextBookmark */; - 3A4754870FF739C800EE18BA /* PBXTextBookmark */ = 3A4754870FF739C800EE18BA /* PBXTextBookmark */; - 3A4754880FF739FF00EE18BA /* PBXTextBookmark */ = 3A4754880FF739FF00EE18BA /* PBXTextBookmark */; - 3A4754890FF739FF00EE18BA /* PBXTextBookmark */ = 3A4754890FF739FF00EE18BA /* PBXTextBookmark */; - 3A47548A0FF73A4100EE18BA /* PBXTextBookmark */ = 3A47548A0FF73A4100EE18BA /* PBXTextBookmark */; - 3A47548B0FF73A4100EE18BA /* PBXTextBookmark */ = 3A47548B0FF73A4100EE18BA /* PBXTextBookmark */; - 3A47548C0FF73A7600EE18BA /* PBXTextBookmark */ = 3A47548C0FF73A7600EE18BA /* PBXTextBookmark */; - 3A47548D0FF73A7600EE18BA /* PBXTextBookmark */ = 3A47548D0FF73A7600EE18BA /* PBXTextBookmark */; - 3A47548E0FF73ADC00EE18BA /* PBXTextBookmark */ = 3A47548E0FF73ADC00EE18BA /* PBXTextBookmark */; - 3A47548F0FF73ADC00EE18BA /* PBXTextBookmark */ = 3A47548F0FF73ADC00EE18BA /* PBXTextBookmark */; - 3A4754910FF73B8A00EE18BA /* PBXTextBookmark */ = 3A4754910FF73B8A00EE18BA /* PBXTextBookmark */; - 3A4754920FF73B8A00EE18BA /* PBXTextBookmark */ = 3A4754920FF73B8A00EE18BA /* PBXTextBookmark */; - 3A4754930FF73BE600EE18BA /* PBXTextBookmark */ = 3A4754930FF73BE600EE18BA /* PBXTextBookmark */; - 3A4754940FF73BE600EE18BA /* PBXTextBookmark */ = 3A4754940FF73BE600EE18BA /* PBXTextBookmark */; - 3A4754960FF73BFD00EE18BA /* PBXTextBookmark */ = 3A4754960FF73BFD00EE18BA /* PBXTextBookmark */; - 3A4754970FF73BFD00EE18BA /* PBXTextBookmark */ = 3A4754970FF73BFD00EE18BA /* PBXTextBookmark */; - 3A4754980FF73C2200EE18BA /* PBXTextBookmark */ = 3A4754980FF73C2200EE18BA /* PBXTextBookmark */; - 3A4754990FF73C2200EE18BA /* PBXTextBookmark */ = 3A4754990FF73C2200EE18BA /* PBXTextBookmark */; - 3A47549A0FF73C5300EE18BA /* PBXTextBookmark */ = 3A47549A0FF73C5300EE18BA /* PBXTextBookmark */; - 3A47549B0FF73C5300EE18BA /* PBXTextBookmark */ = 3A47549B0FF73C5300EE18BA /* PBXTextBookmark */; - 3A47549C0FF73CB900EE18BA /* PBXTextBookmark */ = 3A47549C0FF73CB900EE18BA /* PBXTextBookmark */; - 3A47549D0FF73CB900EE18BA /* PBXTextBookmark */ = 3A47549D0FF73CB900EE18BA /* PBXTextBookmark */; - 3A47549E0FF73CE800EE18BA /* PBXTextBookmark */ = 3A47549E0FF73CE800EE18BA /* PBXTextBookmark */; - 3A47549F0FF73CE800EE18BA /* PBXTextBookmark */ = 3A47549F0FF73CE800EE18BA /* PBXTextBookmark */; - 3A4754A10FF73D3200EE18BA /* PBXTextBookmark */ = 3A4754A10FF73D3200EE18BA /* PBXTextBookmark */; - 3A4754A20FF73D3200EE18BA /* PBXTextBookmark */ = 3A4754A20FF73D3200EE18BA /* PBXTextBookmark */; - 3A4754A40FF73D8C00EE18BA /* PBXTextBookmark */ = 3A4754A40FF73D8C00EE18BA /* PBXTextBookmark */; - 3A4754A50FF73D8C00EE18BA /* PBXTextBookmark */ = 3A4754A50FF73D8C00EE18BA /* PBXTextBookmark */; - 3A4754A60FF73DD200EE18BA /* PBXTextBookmark */ = 3A4754A60FF73DD200EE18BA /* PBXTextBookmark */; - 3A4754A70FF73DD200EE18BA /* PBXTextBookmark */ = 3A4754A70FF73DD200EE18BA /* PBXTextBookmark */; - 3A4754A80FF73DE300EE18BA /* PBXTextBookmark */ = 3A4754A80FF73DE300EE18BA /* PBXTextBookmark */; - 3A4754A90FF73DE300EE18BA /* PBXTextBookmark */ = 3A4754A90FF73DE300EE18BA /* PBXTextBookmark */; + 3A47543F0FF732C700EE18BA = 3A47543F0FF732C700EE18BA /* PBXTextBookmark */; + 3A4754400FF732C700EE18BA = 3A4754400FF732C700EE18BA /* PBXTextBookmark */; + 3A4754410FF732C700EE18BA = 3A4754410FF732C700EE18BA /* PBXTextBookmark */; + 3A4754420FF732C700EE18BA = 3A4754420FF732C700EE18BA /* PBXTextBookmark */; + 3A4754430FF732C700EE18BA = 3A4754430FF732C700EE18BA /* PBXTextBookmark */; + 3A4754460FF732C700EE18BA = 3A4754460FF732C700EE18BA /* PBXTextBookmark */; + 3A4754470FF7330D00EE18BA = 3A4754470FF7330D00EE18BA /* PBXTextBookmark */; + 3A4754480FF7330D00EE18BA = 3A4754480FF7330D00EE18BA /* PBXTextBookmark */; + 3A4754490FF7330D00EE18BA = 3A4754490FF7330D00EE18BA /* PBXTextBookmark */; + 3A47544A0FF7330D00EE18BA = 3A47544A0FF7330D00EE18BA /* PBXTextBookmark */; + 3A47544C0FF7335F00EE18BA = 3A47544C0FF7335F00EE18BA /* PBXTextBookmark */; + 3A47544D0FF7335F00EE18BA = 3A47544D0FF7335F00EE18BA /* PBXTextBookmark */; + 3A47544E0FF7337500EE18BA = 3A47544E0FF7337500EE18BA /* PBXTextBookmark */; + 3A47544F0FF7337500EE18BA = 3A47544F0FF7337500EE18BA /* PBXTextBookmark */; + 3A4754500FF733C400EE18BA = 3A4754500FF733C400EE18BA /* PBXTextBookmark */; + 3A4754510FF733C400EE18BA = 3A4754510FF733C400EE18BA /* PBXTextBookmark */; + 3A4754520FF7340100EE18BA = 3A4754520FF7340100EE18BA /* PBXTextBookmark */; + 3A4754530FF7340100EE18BA = 3A4754530FF7340100EE18BA /* PBXTextBookmark */; + 3A4754540FF7346300EE18BA = 3A4754540FF7346300EE18BA /* PBXTextBookmark */; + 3A4754550FF7346300EE18BA = 3A4754550FF7346300EE18BA /* PBXTextBookmark */; + 3A4754560FF7347100EE18BA = 3A4754560FF7347100EE18BA /* PBXTextBookmark */; + 3A4754570FF7347100EE18BA = 3A4754570FF7347100EE18BA /* PBXTextBookmark */; + 3A47545A0FF7348000EE18BA = 3A47545A0FF7348000EE18BA /* PBXTextBookmark */; + 3A47545B0FF7348000EE18BA = 3A47545B0FF7348000EE18BA /* PBXTextBookmark */; + 3A47545D0FF734FD00EE18BA = 3A47545D0FF734FD00EE18BA /* PBXTextBookmark */; + 3A47545E0FF734FD00EE18BA = 3A47545E0FF734FD00EE18BA /* PBXTextBookmark */; + 3A47545F0FF7351000EE18BA = 3A47545F0FF7351000EE18BA /* PBXTextBookmark */; + 3A4754600FF7351000EE18BA = 3A4754600FF7351000EE18BA /* PBXTextBookmark */; + 3A4754610FF7353C00EE18BA = 3A4754610FF7353C00EE18BA /* PBXTextBookmark */; + 3A4754620FF7353C00EE18BA = 3A4754620FF7353C00EE18BA /* PBXTextBookmark */; + 3A4754630FF7355500EE18BA = 3A4754630FF7355500EE18BA /* PBXTextBookmark */; + 3A4754640FF7355500EE18BA = 3A4754640FF7355500EE18BA /* PBXTextBookmark */; + 3A4754650FF7356E00EE18BA = 3A4754650FF7356E00EE18BA /* PBXTextBookmark */; + 3A4754660FF7356E00EE18BA = 3A4754660FF7356E00EE18BA /* PBXTextBookmark */; + 3A4754670FF7358300EE18BA = 3A4754670FF7358300EE18BA /* PBXTextBookmark */; + 3A4754680FF7358300EE18BA = 3A4754680FF7358300EE18BA /* PBXTextBookmark */; + 3A47546B0FF7361D00EE18BA = 3A47546B0FF7361D00EE18BA /* PBXTextBookmark */; + 3A47546C0FF7361D00EE18BA = 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */; + 3A47546D0FF7361D00EE18BA = 3A47546D0FF7361D00EE18BA /* PBXTextBookmark */; + 3A47546E0FF7367500EE18BA = 3A47546E0FF7367500EE18BA /* PBXTextBookmark */; + 3A47546F0FF7367500EE18BA = 3A47546F0FF7367500EE18BA /* PBXTextBookmark */; + 3A4754700FF736B800EE18BA = 3A4754700FF736B800EE18BA /* PBXTextBookmark */; + 3A4754710FF736B800EE18BA = 3A4754710FF736B800EE18BA /* PBXTextBookmark */; + 3A4754720FF7373E00EE18BA = 3A4754720FF7373E00EE18BA /* PBXTextBookmark */; + 3A4754730FF7373E00EE18BA = 3A4754730FF7373E00EE18BA /* PBXTextBookmark */; + 3A4754740FF7375A00EE18BA = 3A4754740FF7375A00EE18BA /* PBXTextBookmark */; + 3A4754750FF7375A00EE18BA = 3A4754750FF7375A00EE18BA /* PBXTextBookmark */; + 3A4754760FF7379600EE18BA = 3A4754760FF7379600EE18BA /* PBXTextBookmark */; + 3A4754770FF7379600EE18BA = 3A4754770FF7379600EE18BA /* PBXTextBookmark */; + 3A4754780FF737DF00EE18BA = 3A4754780FF737DF00EE18BA /* PBXTextBookmark */; + 3A4754790FF737DF00EE18BA = 3A4754790FF737DF00EE18BA /* PBXTextBookmark */; + 3A47547A0FF7387000EE18BA = 3A47547A0FF7387000EE18BA /* PBXTextBookmark */; + 3A47547B0FF7387000EE18BA = 3A47547B0FF7387000EE18BA /* PBXTextBookmark */; + 3A47547C0FF738A200EE18BA = 3A47547C0FF738A200EE18BA /* PBXTextBookmark */; + 3A47547D0FF738A200EE18BA = 3A47547D0FF738A200EE18BA /* PBXTextBookmark */; + 3A47547E0FF738B400EE18BA = 3A47547E0FF738B400EE18BA /* PBXTextBookmark */; + 3A47547F0FF738B400EE18BA = 3A47547F0FF738B400EE18BA /* PBXTextBookmark */; + 3A4754800FF7393F00EE18BA = 3A4754800FF7393F00EE18BA /* PBXTextBookmark */; + 3A4754810FF7393F00EE18BA = 3A4754810FF7393F00EE18BA /* PBXTextBookmark */; + 3A4754820FF7395900EE18BA = 3A4754820FF7395900EE18BA /* PBXTextBookmark */; + 3A4754830FF7395900EE18BA = 3A4754830FF7395900EE18BA /* PBXTextBookmark */; + 3A4754840FF7397700EE18BA = 3A4754840FF7397700EE18BA /* PBXTextBookmark */; + 3A4754850FF7397700EE18BA = 3A4754850FF7397700EE18BA /* PBXTextBookmark */; + 3A4754860FF739C800EE18BA = 3A4754860FF739C800EE18BA /* PBXTextBookmark */; + 3A4754870FF739C800EE18BA = 3A4754870FF739C800EE18BA /* PBXTextBookmark */; + 3A4754880FF739FF00EE18BA = 3A4754880FF739FF00EE18BA /* PBXTextBookmark */; + 3A4754890FF739FF00EE18BA = 3A4754890FF739FF00EE18BA /* PBXTextBookmark */; + 3A47548A0FF73A4100EE18BA = 3A47548A0FF73A4100EE18BA /* PBXTextBookmark */; + 3A47548B0FF73A4100EE18BA = 3A47548B0FF73A4100EE18BA /* PBXTextBookmark */; + 3A47548C0FF73A7600EE18BA = 3A47548C0FF73A7600EE18BA /* PBXTextBookmark */; + 3A47548D0FF73A7600EE18BA = 3A47548D0FF73A7600EE18BA /* PBXTextBookmark */; + 3A47548E0FF73ADC00EE18BA = 3A47548E0FF73ADC00EE18BA /* PBXTextBookmark */; + 3A47548F0FF73ADC00EE18BA = 3A47548F0FF73ADC00EE18BA /* PBXTextBookmark */; + 3A4754910FF73B8A00EE18BA = 3A4754910FF73B8A00EE18BA /* PBXTextBookmark */; + 3A4754920FF73B8A00EE18BA = 3A4754920FF73B8A00EE18BA /* PBXTextBookmark */; + 3A4754930FF73BE600EE18BA = 3A4754930FF73BE600EE18BA /* PBXTextBookmark */; + 3A4754940FF73BE600EE18BA = 3A4754940FF73BE600EE18BA /* PBXTextBookmark */; + 3A4754960FF73BFD00EE18BA = 3A4754960FF73BFD00EE18BA /* PBXTextBookmark */; + 3A4754970FF73BFD00EE18BA = 3A4754970FF73BFD00EE18BA /* PBXTextBookmark */; + 3A4754980FF73C2200EE18BA = 3A4754980FF73C2200EE18BA /* PBXTextBookmark */; + 3A4754990FF73C2200EE18BA = 3A4754990FF73C2200EE18BA /* PBXTextBookmark */; + 3A47549A0FF73C5300EE18BA = 3A47549A0FF73C5300EE18BA /* PBXTextBookmark */; + 3A47549B0FF73C5300EE18BA = 3A47549B0FF73C5300EE18BA /* PBXTextBookmark */; + 3A47549C0FF73CB900EE18BA = 3A47549C0FF73CB900EE18BA /* PBXTextBookmark */; + 3A47549D0FF73CB900EE18BA = 3A47549D0FF73CB900EE18BA /* PBXTextBookmark */; + 3A47549E0FF73CE800EE18BA = 3A47549E0FF73CE800EE18BA /* PBXTextBookmark */; + 3A47549F0FF73CE800EE18BA = 3A47549F0FF73CE800EE18BA /* PBXTextBookmark */; + 3A4754A10FF73D3200EE18BA = 3A4754A10FF73D3200EE18BA /* PBXTextBookmark */; + 3A4754A20FF73D3200EE18BA = 3A4754A20FF73D3200EE18BA /* PBXTextBookmark */; + 3A4754A40FF73D8C00EE18BA = 3A4754A40FF73D8C00EE18BA /* PBXTextBookmark */; + 3A4754A50FF73D8C00EE18BA = 3A4754A50FF73D8C00EE18BA /* PBXTextBookmark */; + 3A4754A60FF73DD200EE18BA = 3A4754A60FF73DD200EE18BA /* PBXTextBookmark */; + 3A4754A70FF73DD200EE18BA = 3A4754A70FF73DD200EE18BA /* PBXTextBookmark */; + 3A4754A80FF73DE300EE18BA = 3A4754A80FF73DE300EE18BA /* PBXTextBookmark */; + 3A4754A90FF73DE300EE18BA = 3A4754A90FF73DE300EE18BA /* PBXTextBookmark */; 3A5D84730FCCA60900465DF2 = 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */; 3A5D84E40FCCAA6700465DF2 = 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */; 3A62EEFF0FD5FF7900E60F50 = 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */; @@ -200,6 +200,12 @@ 3A99A6650FB8E3DC00B1F47C = 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */; 3A99A6C60FB8E78600B1F47C = 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */; 3A99A7400FB8EC6800B1F47C = 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */; + 3AC8A5330FF81CB200DE2863 /* PBXTextBookmark */ = 3AC8A5330FF81CB200DE2863 /* PBXTextBookmark */; + 3AC8A5360FF81CB200DE2863 /* PBXTextBookmark */ = 3AC8A5360FF81CB200DE2863 /* PBXTextBookmark */; + 3AC8A53D0FF81D5E00DE2863 /* PBXTextBookmark */ = 3AC8A53D0FF81D5E00DE2863 /* PBXTextBookmark */; + 3AC8A53E0FF81D5E00DE2863 /* PBXTextBookmark */ = 3AC8A53E0FF81D5E00DE2863 /* PBXTextBookmark */; + 3AC8A53F0FF81D7C00DE2863 /* PBXTextBookmark */ = 3AC8A53F0FF81D7C00DE2863 /* PBXTextBookmark */; + 3AC8A5400FF81D7C00DE2863 /* PBXTextBookmark */ = 3AC8A5400FF81D7C00DE2863 /* PBXTextBookmark */; 3AEAF9100FB2697C00D61E73 = 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */; 3AEAF9120FB2697C00D61E73 = 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */; 3AEAF9130FB2697C00D61E73 = 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */; @@ -293,7 +299,7 @@ modificationTime = 267219111.612896; state = 2; }; - 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:298 */ = { + 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:310 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -305,12 +311,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 298; + lineNumber = 310; location = codegen; modificationTime = 267219111.612992; state = 2; }; - 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:291 */ = { + 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:303 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -321,7 +327,7 @@ fileReference = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; hitCount = 0; ignoreCount = 0; - lineNumber = 291; + lineNumber = 303; location = codegen; modificationTime = 267219111.613271; state = 2; @@ -342,7 +348,7 @@ modificationTime = 267219111.613516; state = 2; }; - 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:314 */ = { + 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:326 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -354,12 +360,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 314; + lineNumber = 326; location = codegen; modificationTime = 267219111.613607; state = 2; }; - 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:289 */ = { + 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:301 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -370,12 +376,12 @@ fileReference = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; hitCount = 0; ignoreCount = 0; - lineNumber = 289; + lineNumber = 301; location = codegen; modificationTime = 267219111.613867; state = 2; }; - 3A13FC750FDA64190051F833 /* supervisor_static_include.h:327 */ = { + 3A13FC750FDA64190051F833 /* supervisor_static_include.h:339 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -387,12 +393,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 327; + lineNumber = 339; location = codegen; modificationTime = 267219111.614107; state = 2; }; - 3A13FC780FDA64220051F833 /* supervisor_static_include.h:320 */ = { + 3A13FC780FDA64220051F833 /* supervisor_static_include.h:332 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -404,12 +410,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 320; + lineNumber = 332; location = codegen; modificationTime = 267219111.614566; state = 2; }; - 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:329 */ = { + 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:341 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -421,12 +427,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 329; + lineNumber = 341; location = codegen; modificationTime = 267219111.614813; state = 2; }; - 3A13FC830FDA66170051F833 /* supervisor_static_include.h:322 */ = { + 3A13FC830FDA66170051F833 /* supervisor_static_include.h:334 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -438,7 +444,7 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 322; + lineNumber = 334; modificationTime = 267219111.768971; state = 0; }; @@ -655,7 +661,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -695,7 +701,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1282; vrLoc = 5610; @@ -705,7 +711,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 477"; rLen = 0; - rLoc = 12720; + rLoc = 12960; rType = 0; vrLen = 1134; vrLoc = 11656; @@ -715,7 +721,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -735,7 +741,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1282; vrLoc = 5610; @@ -745,7 +751,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 137"; rLen = 0; - rLoc = 3756; + rLoc = 3847; rType = 0; vrLen = 985; vrLoc = 2688; @@ -755,7 +761,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1356; vrLoc = 5697; @@ -765,7 +771,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 97"; rLen = 0; - rLoc = 2718; + rLoc = 2767; rType = 0; vrLen = 1165; vrLoc = 2152; @@ -775,7 +781,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1348; vrLoc = 5790; @@ -785,7 +791,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 105"; rLen = 0; - rLoc = 2937; + rLoc = 2986; rType = 0; vrLen = 1069; vrLoc = 1943; @@ -795,7 +801,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1370; vrLoc = 5885; @@ -805,7 +811,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 105"; rLen = 24; - rLoc = 2913; + rLoc = 2962; rType = 0; vrLen = 1089; vrLoc = 1943; @@ -815,7 +821,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1370; vrLoc = 5905; @@ -825,7 +831,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 105"; rLen = 0; - rLoc = 2912; + rLoc = 2961; rType = 0; vrLen = 1092; vrLoc = 1943; @@ -835,7 +841,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1370; vrLoc = 5908; @@ -845,7 +851,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 179"; rLen = 0; - rLoc = 4568; + rLoc = 4808; rType = 0; vrLen = 959; vrLoc = 3695; @@ -855,7 +861,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1249; vrLoc = 5821; @@ -865,7 +871,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 169"; rLen = 0; - rLoc = 4380; + rLoc = 4620; rType = 0; vrLen = 972; vrLoc = 3409; @@ -875,7 +881,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5349; @@ -885,7 +891,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 91"; rLen = 0; - rLoc = 2468; + rLoc = 2517; rType = 0; vrLen = 1170; vrLoc = 2151; @@ -895,7 +901,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1400; vrLoc = 5828; @@ -915,7 +921,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5408; @@ -925,7 +931,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 347"; rLen = 0; - rLoc = 8684; + rLoc = 8924; rType = 0; vrLen = 1073; vrLoc = 7822; @@ -935,7 +941,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5408; @@ -955,7 +961,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5406; @@ -965,7 +971,7 @@ comments = "error: syntax error before ')' token"; fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; rLen = 0; - rLoc = 537; + rLoc = 549; rType = 1; }; 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */ = { @@ -973,7 +979,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 507"; rLen = 0; - rLoc = 13626; + rLoc = 13866; rType = 0; vrLen = 1206; vrLoc = 11937; @@ -983,7 +989,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5427; @@ -993,7 +999,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 505"; rLen = 0; - rLoc = 13493; + rLoc = 13733; rType = 0; vrLen = 1170; vrLoc = 11974; @@ -1003,7 +1009,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5427; @@ -1013,7 +1019,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 520"; rLen = 0; - rLoc = 13923; + rLoc = 14163; rType = 0; vrLen = 1205; vrLoc = 11974; @@ -1023,7 +1029,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5427; @@ -1033,7 +1039,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 509"; rLen = 0; - rLoc = 13487; + rLoc = 13727; rType = 0; vrLen = 1171; vrLoc = 11889; @@ -1043,7 +1049,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1283; vrLoc = 5427; @@ -1063,7 +1069,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1183; vrLoc = 5405; @@ -1073,7 +1079,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 509"; rLen = 0; - rLoc = 13472; + rLoc = 13712; rType = 0; vrLen = 1212; vrLoc = 12047; @@ -1083,7 +1089,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1183; vrLoc = 5405; @@ -1093,7 +1099,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 525"; rLen = 0; - rLoc = 13860; + rLoc = 14100; rType = 0; vrLen = 1043; vrLoc = 12370; @@ -1103,7 +1109,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1183; vrLoc = 5405; @@ -1113,7 +1119,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 74"; rLen = 0; - rLoc = 2004; + rLoc = 2053; rType = 0; vrLen = 1258; vrLoc = 905; @@ -1123,7 +1129,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5532; @@ -1143,7 +1149,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1153,7 +1159,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 513"; rLen = 0; - rLoc = 13449; + rLoc = 13689; rType = 0; vrLen = 972; vrLoc = 12602; @@ -1163,7 +1169,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1173,7 +1179,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 501"; rLen = 0; - rLoc = 13113; + rLoc = 13353; rType = 0; vrLen = 1253; vrLoc = 12060; @@ -1183,7 +1189,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1193,7 +1199,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 500"; rLen = 0; - rLoc = 13087; + rLoc = 13327; rType = 0; vrLen = 1253; vrLoc = 12060; @@ -1203,7 +1209,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1213,7 +1219,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 499"; rLen = 0; - rLoc = 13003; + rLoc = 13243; rType = 0; vrLen = 1169; vrLoc = 12060; @@ -1223,7 +1229,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1233,7 +1239,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 538"; rLen = 0; - rLoc = 13824; + rLoc = 14064; rType = 0; vrLen = 970; vrLoc = 13013; @@ -1243,7 +1249,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1253,7 +1259,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 539"; rLen = 0; - rLoc = 13895; + rLoc = 14135; rType = 0; vrLen = 1010; vrLoc = 13013; @@ -1263,7 +1269,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1273,7 +1279,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 546"; rLen = 0; - rLoc = 13936; + rLoc = 14176; rType = 0; vrLen = 1012; vrLoc = 13013; @@ -1283,7 +1289,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1293,7 +1299,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 497"; rLen = 0; - rLoc = 12860; + rLoc = 13100; rType = 0; vrLen = 1157; vrLoc = 11900; @@ -1303,7 +1309,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1158; vrLoc = 5530; @@ -1313,7 +1319,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 143"; rLen = 0; - rLoc = 3660; + rLoc = 3725; rType = 0; vrLen = 979; vrLoc = 3365; @@ -1323,7 +1329,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 458"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1183; vrLoc = 5592; @@ -1333,7 +1339,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 147"; rLen = 0; - rLoc = 3714; + rLoc = 3779; rType = 0; vrLen = 862; vrLoc = 3365; @@ -1343,7 +1349,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 463"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1195; vrLoc = 5655; @@ -1353,7 +1359,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 129"; rLen = 0; - rLoc = 3314; + rLoc = 3363; rType = 0; vrLen = 1094; vrLoc = 2835; @@ -1363,7 +1369,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 464"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1400; vrLoc = 6178; @@ -1373,7 +1379,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 132"; rLen = 0; - rLoc = 3399; + rLoc = 3448; rType = 0; vrLen = 1093; vrLoc = 2835; @@ -1383,7 +1389,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 465"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1279; vrLoc = 5905; @@ -1393,7 +1399,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 106"; rLen = 0; - rLoc = 2829; + rLoc = 2878; rType = 0; vrLen = 1194; vrLoc = 2331; @@ -1403,7 +1409,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 465"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1260; vrLoc = 5958; @@ -1413,7 +1419,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 98"; rLen = 0; - rLoc = 2554; + rLoc = 2603; rType = 0; vrLen = 1013; vrLoc = 2122; @@ -1423,7 +1429,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 465"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1252; vrLoc = 6057; @@ -1443,7 +1449,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 465"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1252; vrLoc = 6059; @@ -1453,7 +1459,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 98"; rLen = 0; - rLoc = 2552; + rLoc = 2601; rType = 0; vrLen = 1124; vrLoc = 1992; @@ -1463,7 +1469,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 465"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1276; vrLoc = 6003; @@ -1473,7 +1479,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 146"; rLen = 0; - rLoc = 3714; + rLoc = 3779; rType = 0; vrLen = 953; vrLoc = 3312; @@ -1483,7 +1489,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 459"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1265; vrLoc = 6040; @@ -1503,7 +1509,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 459"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1265; vrLoc = 6042; @@ -1513,7 +1519,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 556"; rLen = 0; - rLoc = 13936; + rLoc = 14176; rType = 0; vrLen = 952; vrLoc = 13200; @@ -1523,7 +1529,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 459"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1265; vrLoc = 6042; @@ -1533,7 +1539,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 553"; rLen = 0; - rLoc = 13929; + rLoc = 14169; rType = 0; vrLen = 958; vrLoc = 13200; @@ -1543,7 +1549,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 459"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1265; vrLoc = 6042; @@ -1871,9 +1877,9 @@ }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {968, 9212}}"; - sepNavSelRange = "{11404, 0}"; - sepNavVisRange = "{6042, 1265}"; + sepNavIntBoundsRect = "{{0, 0}, {968, 9296}}"; + sepNavSelRange = "{11644, 0}"; + sepNavVisRange = "{6344, 1249}"; sepNavWindowFrame = "{{130, 91}, {1027, 911}}"; }; }; @@ -1882,7 +1888,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 15"; rLen = 0; - rLoc = 14473; + rLoc = 14713; rType = 0; vrLen = 292; vrLoc = 0; @@ -1914,6 +1920,66 @@ vrLen = 457; vrLoc = 0; }; + 3AC8A5330FF81CB200DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 136"; + rLen = 0; + rLoc = 3499; + rType = 0; + vrLen = 1178; + vrLoc = 2457; + }; + 3AC8A5360FF81CB200DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 465"; + rLen = 0; + rLoc = 11644; + rType = 0; + vrLen = 1265; + vrLoc = 6140; + }; + 3AC8A53D0FF81D5E00DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 158"; + rLen = 0; + rLoc = 4053; + rType = 0; + vrLen = 938; + vrLoc = 3200; + }; + 3AC8A53E0FF81D5E00DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 471"; + rLen = 0; + rLoc = 11644; + rType = 0; + vrLen = 1249; + vrLoc = 6344; + }; + 3AC8A53F0FF81D7C00DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 154"; + rLen = 0; + rLoc = 3924; + rType = 0; + vrLen = 938; + vrLoc = 3200; + }; + 3AC8A5400FF81D7C00DE2863 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 471"; + rLen = 0; + rLoc = 11644; + rType = 0; + vrLen = 1249; + vrLoc = 6344; + }; 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1011, 626}}"; @@ -1929,12 +1995,6 @@ name = supervisorCompler.c; path = /Volumes/y/drew/Dropbox/Code/pntool/codegen/src/supervisorCompler.c; sourceTree = "<absolute>"; - uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {922, 2702}}"; - sepNavSelRange = "{4872, 0}"; - sepNavVisRange = "{4373, 1209}"; - sepNavWindowFrame = "{{119, 163}, {981, 639}}"; - }; }; 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */ = { isa = PBXTextBookmark; @@ -2058,7 +2118,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -2328,7 +2388,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11404; + rLoc = 11644; rType = 0; vrLen = 1282; vrLoc = 5612; Modified: codegen/src/supervisor_static_include.h =================================================================== --- codegen/src/supervisor_static_include.h 2009-06-28 06:07:50 UTC (rev 116) +++ codegen/src/supervisor_static_include.h 2009-06-28 21:52:56 UTC (rev 117) @@ -41,6 +41,7 @@ int how_many_fire_somethings; int selected_fire_something; unique_identify_fire_something *u; + char sent; //1 - sent, 0 - unsent } reservation; typedef struct{ reservation* array[ALLOC_DATASTRUCTURE_HOW_MANY_PLANTS][HOW_MANY_RESERVATIONS]; @@ -65,6 +66,7 @@ { r->how_many_fire_somethings = how_many_fire_somethings; r->u = malloc(sizeof(unique_identify_fire_something) * how_many_fire_somethings); + r->sent = 0; } void track_reservation(reservation_structure* structure, int plant, reservation *u) { @@ -131,6 +133,7 @@ { r->selected_fire_something = i; + r->sent = 1; return; } } @@ -145,7 +148,16 @@ reservation *res = get_reservation_by_id(r, p, i); if (res!=NULL) //open reservation { - attempt_close_reservation(supervisor, how_many_plants, res, pipe); + if (!res->sent) + { + attempt_close_reservation(supervisor, how_many_plants, res, pipe); + } + else + { +#ifdef NOISY_DEBUG + printf("Ignoring this reservation because it appears we've already sent a firemsg...\n"); +#endif + } } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <com...@us...> - 2009-06-28 06:07:52
|
Revision: 116 http://pntool.svn.sourceforge.net/pntool/?rev=116&view=rev Author: compaqdrew Date: 2009-06-28 06:07:50 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Tracing weird hang... Modified Paths: -------------- codegen/src/codegen.xcodeproj/drew.mode1v3 codegen/src/codegen.xcodeproj/drew.pbxuser codegen/src/supervisor_static_include.h Modified: codegen/src/codegen.xcodeproj/drew.mode1v3 =================================================================== --- codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:07:42 UTC (rev 115) +++ codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:07:50 UTC (rev 116) @@ -216,7 +216,7 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A4754710FF736B800EE18BA</string> + <string>3A4754A90FF73DE300EE18BA</string> <key>history</key> <array> <string>3AF91D9B0FF711D9009F6B4F</string> @@ -376,7 +376,7 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A4754700FF736B800EE18BA</string> + <string>3A4754A80FF73DE300EE18BA</string> <key>history</key> <array> <string>3A7FCEED0FBC046D00EF8097</string> Modified: codegen/src/codegen.xcodeproj/drew.pbxuser =================================================================== --- codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:07:42 UTC (rev 115) +++ codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:07:50 UTC (rev 116) @@ -17,15 +17,15 @@ 3A3A77E70FC891BD00DB2D28 /* petriNetSerializer.c:33 */, 3A3A783D0FC894C600DB2D28 /* supervisorCompler.c:116 */, 3A13FC180FDA5F3C0051F833 /* supervisorCompler.c:176 */, - 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:291 */, - 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:284 */, + 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:298 */, + 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:291 */, 3A13FC250FDA5FBA0051F833 /* supervisorCompler.c:174 */, - 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:307 */, - 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:282 */, - 3A13FC750FDA64190051F833 /* supervisor_static_include.h:320 */, - 3A13FC780FDA64220051F833 /* supervisor_static_include.h:313 */, - 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:322 */, - 3A13FC830FDA66170051F833 /* supervisor_static_include.h:315 */, + 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:314 */, + 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:289 */, + 3A13FC750FDA64190051F833 /* supervisor_static_include.h:327 */, + 3A13FC780FDA64220051F833 /* supervisor_static_include.h:320 */, + 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:329 */, + 3A13FC830FDA66170051F833 /* supervisor_static_include.h:322 */, ); codeSenseManager = 3A232C630FB214E900A5C7C2 /* Code sense */; executables = ( @@ -129,6 +129,58 @@ 3A47546F0FF7367500EE18BA /* PBXTextBookmark */ = 3A47546F0FF7367500EE18BA /* PBXTextBookmark */; 3A4754700FF736B800EE18BA /* PBXTextBookmark */ = 3A4754700FF736B800EE18BA /* PBXTextBookmark */; 3A4754710FF736B800EE18BA /* PBXTextBookmark */ = 3A4754710FF736B800EE18BA /* PBXTextBookmark */; + 3A4754720FF7373E00EE18BA /* PBXTextBookmark */ = 3A4754720FF7373E00EE18BA /* PBXTextBookmark */; + 3A4754730FF7373E00EE18BA /* PBXTextBookmark */ = 3A4754730FF7373E00EE18BA /* PBXTextBookmark */; + 3A4754740FF7375A00EE18BA /* PBXTextBookmark */ = 3A4754740FF7375A00EE18BA /* PBXTextBookmark */; + 3A4754750FF7375A00EE18BA /* PBXTextBookmark */ = 3A4754750FF7375A00EE18BA /* PBXTextBookmark */; + 3A4754760FF7379600EE18BA /* PBXTextBookmark */ = 3A4754760FF7379600EE18BA /* PBXTextBookmark */; + 3A4754770FF7379600EE18BA /* PBXTextBookmark */ = 3A4754770FF7379600EE18BA /* PBXTextBookmark */; + 3A4754780FF737DF00EE18BA /* PBXTextBookmark */ = 3A4754780FF737DF00EE18BA /* PBXTextBookmark */; + 3A4754790FF737DF00EE18BA /* PBXTextBookmark */ = 3A4754790FF737DF00EE18BA /* PBXTextBookmark */; + 3A47547A0FF7387000EE18BA /* PBXTextBookmark */ = 3A47547A0FF7387000EE18BA /* PBXTextBookmark */; + 3A47547B0FF7387000EE18BA /* PBXTextBookmark */ = 3A47547B0FF7387000EE18BA /* PBXTextBookmark */; + 3A47547C0FF738A200EE18BA /* PBXTextBookmark */ = 3A47547C0FF738A200EE18BA /* PBXTextBookmark */; + 3A47547D0FF738A200EE18BA /* PBXTextBookmark */ = 3A47547D0FF738A200EE18BA /* PBXTextBookmark */; + 3A47547E0FF738B400EE18BA /* PBXTextBookmark */ = 3A47547E0FF738B400EE18BA /* PBXTextBookmark */; + 3A47547F0FF738B400EE18BA /* PBXTextBookmark */ = 3A47547F0FF738B400EE18BA /* PBXTextBookmark */; + 3A4754800FF7393F00EE18BA /* PBXTextBookmark */ = 3A4754800FF7393F00EE18BA /* PBXTextBookmark */; + 3A4754810FF7393F00EE18BA /* PBXTextBookmark */ = 3A4754810FF7393F00EE18BA /* PBXTextBookmark */; + 3A4754820FF7395900EE18BA /* PBXTextBookmark */ = 3A4754820FF7395900EE18BA /* PBXTextBookmark */; + 3A4754830FF7395900EE18BA /* PBXTextBookmark */ = 3A4754830FF7395900EE18BA /* PBXTextBookmark */; + 3A4754840FF7397700EE18BA /* PBXTextBookmark */ = 3A4754840FF7397700EE18BA /* PBXTextBookmark */; + 3A4754850FF7397700EE18BA /* PBXTextBookmark */ = 3A4754850FF7397700EE18BA /* PBXTextBookmark */; + 3A4754860FF739C800EE18BA /* PBXTextBookmark */ = 3A4754860FF739C800EE18BA /* PBXTextBookmark */; + 3A4754870FF739C800EE18BA /* PBXTextBookmark */ = 3A4754870FF739C800EE18BA /* PBXTextBookmark */; + 3A4754880FF739FF00EE18BA /* PBXTextBookmark */ = 3A4754880FF739FF00EE18BA /* PBXTextBookmark */; + 3A4754890FF739FF00EE18BA /* PBXTextBookmark */ = 3A4754890FF739FF00EE18BA /* PBXTextBookmark */; + 3A47548A0FF73A4100EE18BA /* PBXTextBookmark */ = 3A47548A0FF73A4100EE18BA /* PBXTextBookmark */; + 3A47548B0FF73A4100EE18BA /* PBXTextBookmark */ = 3A47548B0FF73A4100EE18BA /* PBXTextBookmark */; + 3A47548C0FF73A7600EE18BA /* PBXTextBookmark */ = 3A47548C0FF73A7600EE18BA /* PBXTextBookmark */; + 3A47548D0FF73A7600EE18BA /* PBXTextBookmark */ = 3A47548D0FF73A7600EE18BA /* PBXTextBookmark */; + 3A47548E0FF73ADC00EE18BA /* PBXTextBookmark */ = 3A47548E0FF73ADC00EE18BA /* PBXTextBookmark */; + 3A47548F0FF73ADC00EE18BA /* PBXTextBookmark */ = 3A47548F0FF73ADC00EE18BA /* PBXTextBookmark */; + 3A4754910FF73B8A00EE18BA /* PBXTextBookmark */ = 3A4754910FF73B8A00EE18BA /* PBXTextBookmark */; + 3A4754920FF73B8A00EE18BA /* PBXTextBookmark */ = 3A4754920FF73B8A00EE18BA /* PBXTextBookmark */; + 3A4754930FF73BE600EE18BA /* PBXTextBookmark */ = 3A4754930FF73BE600EE18BA /* PBXTextBookmark */; + 3A4754940FF73BE600EE18BA /* PBXTextBookmark */ = 3A4754940FF73BE600EE18BA /* PBXTextBookmark */; + 3A4754960FF73BFD00EE18BA /* PBXTextBookmark */ = 3A4754960FF73BFD00EE18BA /* PBXTextBookmark */; + 3A4754970FF73BFD00EE18BA /* PBXTextBookmark */ = 3A4754970FF73BFD00EE18BA /* PBXTextBookmark */; + 3A4754980FF73C2200EE18BA /* PBXTextBookmark */ = 3A4754980FF73C2200EE18BA /* PBXTextBookmark */; + 3A4754990FF73C2200EE18BA /* PBXTextBookmark */ = 3A4754990FF73C2200EE18BA /* PBXTextBookmark */; + 3A47549A0FF73C5300EE18BA /* PBXTextBookmark */ = 3A47549A0FF73C5300EE18BA /* PBXTextBookmark */; + 3A47549B0FF73C5300EE18BA /* PBXTextBookmark */ = 3A47549B0FF73C5300EE18BA /* PBXTextBookmark */; + 3A47549C0FF73CB900EE18BA /* PBXTextBookmark */ = 3A47549C0FF73CB900EE18BA /* PBXTextBookmark */; + 3A47549D0FF73CB900EE18BA /* PBXTextBookmark */ = 3A47549D0FF73CB900EE18BA /* PBXTextBookmark */; + 3A47549E0FF73CE800EE18BA /* PBXTextBookmark */ = 3A47549E0FF73CE800EE18BA /* PBXTextBookmark */; + 3A47549F0FF73CE800EE18BA /* PBXTextBookmark */ = 3A47549F0FF73CE800EE18BA /* PBXTextBookmark */; + 3A4754A10FF73D3200EE18BA /* PBXTextBookmark */ = 3A4754A10FF73D3200EE18BA /* PBXTextBookmark */; + 3A4754A20FF73D3200EE18BA /* PBXTextBookmark */ = 3A4754A20FF73D3200EE18BA /* PBXTextBookmark */; + 3A4754A40FF73D8C00EE18BA /* PBXTextBookmark */ = 3A4754A40FF73D8C00EE18BA /* PBXTextBookmark */; + 3A4754A50FF73D8C00EE18BA /* PBXTextBookmark */ = 3A4754A50FF73D8C00EE18BA /* PBXTextBookmark */; + 3A4754A60FF73DD200EE18BA /* PBXTextBookmark */ = 3A4754A60FF73DD200EE18BA /* PBXTextBookmark */; + 3A4754A70FF73DD200EE18BA /* PBXTextBookmark */ = 3A4754A70FF73DD200EE18BA /* PBXTextBookmark */; + 3A4754A80FF73DE300EE18BA /* PBXTextBookmark */ = 3A4754A80FF73DE300EE18BA /* PBXTextBookmark */; + 3A4754A90FF73DE300EE18BA /* PBXTextBookmark */ = 3A4754A90FF73DE300EE18BA /* PBXTextBookmark */; 3A5D84730FCCA60900465DF2 = 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */; 3A5D84E40FCCAA6700465DF2 = 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */; 3A62EEFF0FD5FF7900E60F50 = 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */; @@ -241,7 +293,7 @@ modificationTime = 267219111.612896; state = 2; }; - 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:291 */ = { + 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:298 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -253,12 +305,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 291; + lineNumber = 298; location = codegen; modificationTime = 267219111.612992; state = 2; }; - 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:284 */ = { + 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:291 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -269,7 +321,7 @@ fileReference = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; hitCount = 0; ignoreCount = 0; - lineNumber = 284; + lineNumber = 291; location = codegen; modificationTime = 267219111.613271; state = 2; @@ -290,7 +342,7 @@ modificationTime = 267219111.613516; state = 2; }; - 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:307 */ = { + 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:314 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -302,12 +354,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 307; + lineNumber = 314; location = codegen; modificationTime = 267219111.613607; state = 2; }; - 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:282 */ = { + 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:289 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -318,12 +370,12 @@ fileReference = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; hitCount = 0; ignoreCount = 0; - lineNumber = 282; + lineNumber = 289; location = codegen; modificationTime = 267219111.613867; state = 2; }; - 3A13FC750FDA64190051F833 /* supervisor_static_include.h:320 */ = { + 3A13FC750FDA64190051F833 /* supervisor_static_include.h:327 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -335,12 +387,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 320; + lineNumber = 327; location = codegen; modificationTime = 267219111.614107; state = 2; }; - 3A13FC780FDA64220051F833 /* supervisor_static_include.h:313 */ = { + 3A13FC780FDA64220051F833 /* supervisor_static_include.h:320 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -352,12 +404,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 313; + lineNumber = 320; location = codegen; modificationTime = 267219111.614566; state = 2; }; - 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:322 */ = { + 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:329 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -369,12 +421,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 322; + lineNumber = 329; location = codegen; modificationTime = 267219111.614813; state = 2; }; - 3A13FC830FDA66170051F833 /* supervisor_static_include.h:315 */ = { + 3A13FC830FDA66170051F833 /* supervisor_static_include.h:322 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -386,7 +438,7 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 315; + lineNumber = 322; modificationTime = 267219111.768971; state = 0; }; @@ -603,7 +655,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -633,7 +685,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 25"; rLen = 0; - rLoc = 647; + rLoc = 649; rType = 0; vrLen = 1172; vrLoc = 0; @@ -643,7 +695,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1282; vrLoc = 5610; @@ -653,7 +705,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 477"; rLen = 0; - rLoc = 12370; + rLoc = 12720; rType = 0; vrLen = 1134; vrLoc = 11656; @@ -663,7 +715,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -673,7 +725,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 25"; rLen = 0; - rLoc = 647; + rLoc = 649; rType = 0; vrLen = 1172; vrLoc = 0; @@ -683,7 +735,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1282; vrLoc = 5610; @@ -693,7 +745,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 137"; rLen = 0; - rLoc = 3528; + rLoc = 3756; rType = 0; vrLen = 985; vrLoc = 2688; @@ -703,7 +755,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1356; vrLoc = 5697; @@ -713,7 +765,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 97"; rLen = 0; - rLoc = 2491; + rLoc = 2718; rType = 0; vrLen = 1165; vrLoc = 2152; @@ -723,7 +775,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1348; vrLoc = 5790; @@ -733,7 +785,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 105"; rLen = 0; - rLoc = 2710; + rLoc = 2937; rType = 0; vrLen = 1069; vrLoc = 1943; @@ -743,7 +795,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1370; vrLoc = 5885; @@ -753,7 +805,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 105"; rLen = 24; - rLoc = 2686; + rLoc = 2913; rType = 0; vrLen = 1089; vrLoc = 1943; @@ -763,7 +815,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1370; vrLoc = 5905; @@ -773,7 +825,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 105"; rLen = 0; - rLoc = 2685; + rLoc = 2912; rType = 0; vrLen = 1092; vrLoc = 1943; @@ -783,7 +835,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1370; vrLoc = 5908; @@ -793,7 +845,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 179"; rLen = 0; - rLoc = 4340; + rLoc = 4568; rType = 0; vrLen = 959; vrLoc = 3695; @@ -803,7 +855,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1249; vrLoc = 5821; @@ -813,7 +865,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 169"; rLen = 0; - rLoc = 4152; + rLoc = 4380; rType = 0; vrLen = 972; vrLoc = 3409; @@ -823,7 +875,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1158; vrLoc = 5349; @@ -833,7 +885,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 91"; rLen = 0; - rLoc = 2306; + rLoc = 2468; rType = 0; vrLen = 1170; vrLoc = 2151; @@ -843,7 +895,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1400; vrLoc = 5828; @@ -853,7 +905,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 25"; rLen = 0; - rLoc = 647; + rLoc = 649; rType = 0; vrLen = 1174; vrLoc = 0; @@ -863,7 +915,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1283; vrLoc = 5408; @@ -873,7 +925,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 347"; rLen = 0; - rLoc = 8456; + rLoc = 8684; rType = 0; vrLen = 1073; vrLoc = 7822; @@ -883,7 +935,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1283; vrLoc = 5408; @@ -893,7 +945,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 25"; rLen = 0; - rLoc = 647; + rLoc = 649; rType = 0; vrLen = 1172; vrLoc = 0; @@ -903,7 +955,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 451"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1283; vrLoc = 5406; @@ -913,7 +965,7 @@ comments = "error: syntax error before ')' token"; fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; rLen = 0; - rLoc = 508; + rLoc = 537; rType = 1; }; 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */ = { @@ -921,7 +973,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 507"; rLen = 0; - rLoc = 12936; + rLoc = 13626; rType = 0; vrLen = 1206; vrLoc = 11937; @@ -931,7 +983,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1283; vrLoc = 5427; @@ -941,7 +993,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 505"; rLen = 0; - rLoc = 12803; + rLoc = 13493; rType = 0; vrLen = 1170; vrLoc = 11974; @@ -951,7 +1003,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1283; vrLoc = 5427; @@ -961,7 +1013,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 520"; rLen = 0; - rLoc = 13178; + rLoc = 13923; rType = 0; vrLen = 1205; vrLoc = 11974; @@ -971,11 +1023,531 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 452"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1283; vrLoc = 5427; }; + 3A4754720FF7373E00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 509"; + rLen = 0; + rLoc = 13487; + rType = 0; + vrLen = 1171; + vrLoc = 11889; + }; + 3A4754730FF7373E00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1283; + vrLoc = 5427; + }; + 3A4754740FF7375A00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 649; + rType = 0; + vrLen = 1114; + vrLoc = 0; + }; + 3A4754750FF7375A00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1183; + vrLoc = 5405; + }; + 3A4754760FF7379600EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 509"; + rLen = 0; + rLoc = 13472; + rType = 0; + vrLen = 1212; + vrLoc = 12047; + }; + 3A4754770FF7379600EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1183; + vrLoc = 5405; + }; + 3A4754780FF737DF00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 525"; + rLen = 0; + rLoc = 13860; + rType = 0; + vrLen = 1043; + vrLoc = 12370; + }; + 3A4754790FF737DF00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1183; + vrLoc = 5405; + }; + 3A47547A0FF7387000EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 74"; + rLen = 0; + rLoc = 2004; + rType = 0; + vrLen = 1258; + vrLoc = 905; + }; + 3A47547B0FF7387000EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5532; + }; + 3A47547C0FF738A200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 649; + rType = 0; + vrLen = 1112; + vrLoc = 0; + }; + 3A47547D0FF738A200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A47547E0FF738B400EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 513"; + rLen = 0; + rLoc = 13449; + rType = 0; + vrLen = 972; + vrLoc = 12602; + }; + 3A47547F0FF738B400EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A4754800FF7393F00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 501"; + rLen = 0; + rLoc = 13113; + rType = 0; + vrLen = 1253; + vrLoc = 12060; + }; + 3A4754810FF7393F00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A4754820FF7395900EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 500"; + rLen = 0; + rLoc = 13087; + rType = 0; + vrLen = 1253; + vrLoc = 12060; + }; + 3A4754830FF7395900EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A4754840FF7397700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 499"; + rLen = 0; + rLoc = 13003; + rType = 0; + vrLen = 1169; + vrLoc = 12060; + }; + 3A4754850FF7397700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A4754860FF739C800EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 538"; + rLen = 0; + rLoc = 13824; + rType = 0; + vrLen = 970; + vrLoc = 13013; + }; + 3A4754870FF739C800EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A4754880FF739FF00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 539"; + rLen = 0; + rLoc = 13895; + rType = 0; + vrLen = 1010; + vrLoc = 13013; + }; + 3A4754890FF739FF00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A47548A0FF73A4100EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 546"; + rLen = 0; + rLoc = 13936; + rType = 0; + vrLen = 1012; + vrLoc = 13013; + }; + 3A47548B0FF73A4100EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A47548C0FF73A7600EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 497"; + rLen = 0; + rLoc = 12860; + rType = 0; + vrLen = 1157; + vrLoc = 11900; + }; + 3A47548D0FF73A7600EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 457"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1158; + vrLoc = 5530; + }; + 3A47548E0FF73ADC00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 143"; + rLen = 0; + rLoc = 3660; + rType = 0; + vrLen = 979; + vrLoc = 3365; + }; + 3A47548F0FF73ADC00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 458"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1183; + vrLoc = 5592; + }; + 3A4754910FF73B8A00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 147"; + rLen = 0; + rLoc = 3714; + rType = 0; + vrLen = 862; + vrLoc = 3365; + }; + 3A4754920FF73B8A00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 463"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1195; + vrLoc = 5655; + }; + 3A4754930FF73BE600EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 129"; + rLen = 0; + rLoc = 3314; + rType = 0; + vrLen = 1094; + vrLoc = 2835; + }; + 3A4754940FF73BE600EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 464"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1400; + vrLoc = 6178; + }; + 3A4754960FF73BFD00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 132"; + rLen = 0; + rLoc = 3399; + rType = 0; + vrLen = 1093; + vrLoc = 2835; + }; + 3A4754970FF73BFD00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 465"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1279; + vrLoc = 5905; + }; + 3A4754980FF73C2200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 106"; + rLen = 0; + rLoc = 2829; + rType = 0; + vrLen = 1194; + vrLoc = 2331; + }; + 3A4754990FF73C2200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 465"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1260; + vrLoc = 5958; + }; + 3A47549A0FF73C5300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 98"; + rLen = 0; + rLoc = 2554; + rType = 0; + vrLen = 1013; + vrLoc = 2122; + }; + 3A47549B0FF73C5300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 465"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1252; + vrLoc = 6057; + }; + 3A47549C0FF73CB900EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 26"; + rLen = 0; + rLoc = 671; + rType = 0; + vrLen = 1114; + vrLoc = 0; + }; + 3A47549D0FF73CB900EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 465"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1252; + vrLoc = 6059; + }; + 3A47549E0FF73CE800EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 98"; + rLen = 0; + rLoc = 2552; + rType = 0; + vrLen = 1124; + vrLoc = 1992; + }; + 3A47549F0FF73CE800EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 465"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1276; + vrLoc = 6003; + }; + 3A4754A10FF73D3200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 146"; + rLen = 0; + rLoc = 3714; + rType = 0; + vrLen = 953; + vrLoc = 3312; + }; + 3A4754A20FF73D3200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 459"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1265; + vrLoc = 6040; + }; + 3A4754A40FF73D8C00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 649; + rType = 0; + vrLen = 1116; + vrLoc = 0; + }; + 3A4754A50FF73D8C00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 459"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1265; + vrLoc = 6042; + }; + 3A4754A60FF73DD200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 556"; + rLen = 0; + rLoc = 13936; + rType = 0; + vrLen = 952; + vrLoc = 13200; + }; + 3A4754A70FF73DD200EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 459"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1265; + vrLoc = 6042; + }; + 3A4754A80FF73DE300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 553"; + rLen = 0; + rLoc = 13929; + rType = 0; + vrLen = 958; + vrLoc = 13200; + }; + 3A4754A90FF73DE300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 459"; + rLen = 0; + rLoc = 11404; + rType = 0; + vrLen = 1265; + vrLoc = 6042; + }; 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 3A99A6C70FB8E78600B1F47C /* signal.h */; @@ -1299,9 +1871,9 @@ }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {968, 8890}}"; - sepNavSelRange = "{11176, 0}"; - sepNavVisRange = "{5427, 1283}"; + sepNavIntBoundsRect = "{{0, 0}, {968, 9212}}"; + sepNavSelRange = "{11404, 0}"; + sepNavVisRange = "{6042, 1265}"; sepNavWindowFrame = "{{130, 91}, {1027, 911}}"; }; }; @@ -1310,7 +1882,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 15"; rLen = 0; - rLoc = 13728; + rLoc = 14473; rType = 0; vrLen = 292; vrLoc = 0; @@ -1486,7 +2058,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -1756,7 +2328,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 11176; + rLoc = 11404; rType = 0; vrLen = 1282; vrLoc = 5612; Modified: codegen/src/supervisor_static_include.h =================================================================== --- codegen/src/supervisor_static_include.h 2009-06-28 06:07:42 UTC (rev 115) +++ codegen/src/supervisor_static_include.h 2009-06-28 06:07:50 UTC (rev 116) @@ -22,8 +22,8 @@ #include <assert.h> #include <limits.h> #define BUFFER_SIZE 30 -#define NOISY_DEBUG -#define BUFFER_DEBUG +//#define NOISY_DEBUG +//#define BUFFER_DEBUG int somebodys_firing_transition = -1; /* ///////////////////////DATASTRUCTURES/////////////////////// @@ -68,6 +68,11 @@ } void track_reservation(reservation_structure* structure, int plant, reservation *u) { + if (structure->array[plant][u->id]!=NULL) + { + printf("Sanity check failed: Already have reservation with id %d for plant %d\n",u->id, plant); + exit(1); + } structure->array[plant][u->id] = u; } void cancel_reservation(reservation_structure* structure, int plant, int id) @@ -90,6 +95,7 @@ void send_fire_msg(unique_identify_fire_something *u,int rid,int pipe) { char firemsg[BUFFER_SIZE]; sprintf(firemsg,"___Y%d:%d-%d\n",rid,u->label,u->t); + printf("Going to write firemsg %s at pipe #%d\n",firemsg,pipe); write(pipe,firemsg,strlen(firemsg)); } @@ -123,6 +129,7 @@ { if (attempt_fire_something(supervisor, how_many_plants, &r->u[i], r->id,pipe)) { + r->selected_fire_something = i; return; } @@ -485,12 +492,28 @@ { for(i = 0; i < how_many_plants; i++) { +#ifdef NOISY_DEBUG + printf("top of loop\n"); +#endif close_reservation_pass(supervisor,how_many_plants, r_structure, pipes[i][PARENT_TO_CHILD][WRITE_END]); +#ifdef NOISY_DEBUG + printf("Reservation pass complete\n"); +#endif simulation_pass_local(supervisor, how_many_plants, blocked_transitions); +#ifdef NOISY_DEBUG + printf("simulation pass complete\n"); +#endif int pipe = pipes[i][CHILD_TO_PARENT][READ_END]; //printf("listening on %d\n",pipe); +#ifdef BUFFER_DEBUG + printf("hangon...\n"); +#endif int a = read(pipe,r,1); +#ifdef BUFFER_DEBUG + printf("We get signal\n"); +#endif if (a==EOF) continue; + else if (a < 0) { printf("Read error: %d:",a); @@ -501,8 +524,14 @@ if (r[0]=='\n') //we've got a newline { #ifdef BUFFER_DEBUG - printf("Buffer is of size %d\n",strlen(buffer)); + printf("Buffer %d is of size %d\n",i,strlen(buffer[i])); #endif + if (strlen(buffer[i])==0) + { + printf("A plant %d just sent us some junk; trying to recover...\n",i); + buffer[i][0]=0; + continue; + } do_new_contract(buffer[i],supervisor,how_many_plants,i, r_structure,pipes[i][PARENT_TO_CHILD][WRITE_END]); buffer[i][0]=0; @@ -516,7 +545,9 @@ r[1]=0; strcat(buffer[i],r); #ifdef BUFFER_DEBUG - printf("Buffer contains: %s\n",buffer[i]); + + printf("Buffer %d contains: %s\n",i,buffer[i]); + printf("Sizeof %d\n",strlen(buffer[i])); #endif } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <com...@us...> - 2009-06-28 06:07:44
|
Revision: 115 http://pntool.svn.sourceforge.net/pntool/?rev=115&view=rev Author: compaqdrew Date: 2009-06-28 06:07:42 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Better buffer debugging Modified Paths: -------------- codegen/src/codegen.xcodeproj/drew.mode1v3 codegen/src/codegen.xcodeproj/drew.pbxuser codegen/src/codegen.xcodeproj/project.pbxproj codegen/src/main.c codegen/src/supervisor_static_include.h Modified: codegen/src/codegen.xcodeproj/drew.mode1v3 =================================================================== --- codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:07:34 UTC (rev 114) +++ codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:07:42 UTC (rev 115) @@ -216,10 +216,10 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3AF91D9B0FF711D9009F6B4F</string> + <string>3A4754710FF736B800EE18BA</string> <key>history</key> <array> - <string>3AF1CBDF0FF49FD8002E11EE</string> + <string>3AF91D9B0FF711D9009F6B4F</string> </array> </dict> <key>SplitCount</key> @@ -235,7 +235,7 @@ <key>PBXModuleWindowStatusBarHidden2</key> <false/> <key>RubberWindowFrame</key> - <string>130 147 1027 855 0 0 1280 1002 </string> + <string>336 173 1027 855 0 0 1680 1028 </string> </dict> </dict> </array> @@ -274,8 +274,6 @@ <key>Layout</key> <array> <dict> - <key>BecomeActive</key> - <true/> <key>ContentConfiguration</key> <dict> <key>PBXBottomSmartGroupGIDs</key> @@ -322,7 +320,8 @@ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <array> <array> - <integer>16</integer> + <integer>14</integer> + <integer>11</integer> <integer>3</integer> <integer>0</integer> </array> @@ -347,7 +346,7 @@ <real>186</real> </array> <key>RubberWindowFrame</key> - <string>-4 146 1280 856 0 0 1280 1002 </string> + <string>-4 172 1280 856 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXSmartGroupTreeModule</string> @@ -358,12 +357,14 @@ <key>Dock</key> <array> <dict> + <key>BecomeActive</key> + <true/> <key>ContentConfiguration</key> <dict> <key>PBXProjectModuleGUID</key> <string>1CE0B20306471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>text.c</string> + <string>supervisor_static_include.h</string> <key>PBXSplitModuleInNavigatorKey</key> <dict> <key>Split0</key> @@ -371,11 +372,11 @@ <key>PBXProjectModuleGUID</key> <string>1CE0B20406471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>text.c</string> + <string>supervisor_static_include.h</string> <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3AF91D9A0FF711D9009F6B4F</string> + <string>3A4754700FF736B800EE18BA</string> <key>history</key> <array> <string>3A7FCEED0FBC046D00EF8097</string> @@ -396,11 +397,12 @@ <string>3AF91D7E0FF708B2009F6B4F</string> <string>3AF91D7F0FF708B2009F6B4F</string> <string>3AF91D880FF70933009F6B4F</string> - <string>3AF91D8A0FF70933009F6B4F</string> <string>3AF91D8B0FF70933009F6B4F</string> - <string>3AF91D8C0FF70933009F6B4F</string> <string>3AF91D960FF70AD3009F6B4F</string> - <string>3A09E2E10FED6EEA003FAB0D</string> + <string>3A47543F0FF732C700EE18BA</string> + <string>3A4754400FF732C700EE18BA</string> + <string>3A4754470FF7330D00EE18BA</string> + <string>3A47546B0FF7361D00EE18BA</string> </array> <key>prevStack</key> <array> @@ -427,15 +429,9 @@ <string>3AF91D6A0FF70813009F6B4F</string> <string>3AF91D6B0FF70813009F6B4F</string> <string>3AF91D6C0FF70813009F6B4F</string> - <string>3AF91D6D0FF70813009F6B4F</string> - <string>3AF91D810FF708B2009F6B4F</string> - <string>3AF91D820FF708B2009F6B4F</string> - <string>3AF91D830FF708B2009F6B4F</string> - <string>3AF91D8E0FF70933009F6B4F</string> - <string>3AF91D900FF70933009F6B4F</string> - <string>3AF91D910FF70933009F6B4F</string> - <string>3AF91D920FF70933009F6B4F</string> - <string>3AF91D970FF70AD3009F6B4F</string> + <string>3A4754410FF732C700EE18BA</string> + <string>3A4754420FF732C700EE18BA</string> + <string>3A4754480FF7330D00EE18BA</string> </array> </dict> <key>SplitCount</key> @@ -449,7 +445,7 @@ <key>Frame</key> <string>{{0, 0}, {1072, 658}}</string> <key>RubberWindowFrame</key> - <string>-4 146 1280 856 0 0 1280 1002 </string> + <string>-4 172 1280 856 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXNavigatorGroup</string> @@ -469,7 +465,7 @@ <key>Frame</key> <string>{{0, 663}, {1072, 152}}</string> <key>RubberWindowFrame</key> - <string>-4 146 1280 856 0 0 1280 1002 </string> + <string>-4 172 1280 856 0 0 1680 1028 </string> </dict> <key>Module</key> <string>XCDetailModule</string> @@ -493,9 +489,9 @@ </array> <key>TableOfContents</key> <array> - <string>3AF91D6F0FF70813009F6B4F</string> + <string>3A4754440FF732C700EE18BA</string> <string>1CE0B1FE06471DED0097A5F4</string> - <string>3AF91D700FF70813009F6B4F</string> + <string>3A4754450FF732C700EE18BA</string> <string>1CE0B20306471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string> </array> @@ -629,13 +625,13 @@ <integer>5</integer> <key>WindowOrderList</key> <array> - <string>3A232CB10FB21F7F00A5C7C2</string> <string>1CD10A99069EF8BA00B06720</string> <string>3ACFDCB10FDA81C200C504DE</string> - <string>/Users/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> + <string>3A232CB10FB21F7F00A5C7C2</string> + <string>/Volumes/y/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> </array> <key>WindowString</key> - <string>-4 146 1280 856 0 0 1280 1002 </string> + <string>-4 172 1280 856 0 0 1680 1028 </string> <key>WindowToolsV3</key> <array> <dict> @@ -651,12 +647,14 @@ <key>Dock</key> <array> <dict> + <key>BecomeActive</key> + <true/> <key>ContentConfiguration</key> <dict> <key>PBXProjectModuleGUID</key> <string>1CD0528F0623707200166675</string> <key>PBXProjectModuleLabel</key> - <string></string> + <string>supervisor_static_include.h</string> <key>StatusBarVisibility</key> <true/> </dict> @@ -665,7 +663,7 @@ <key>Frame</key> <string>{{0, 0}, {1280, 602}}</string> <key>RubberWindowFrame</key> - <string>160 -58 1280 855 0 0 1280 1002 </string> + <string>560 -58 1280 855 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXNavigatorGroup</string> @@ -689,7 +687,7 @@ <key>Frame</key> <string>{{0, 607}, {1280, 207}}</string> <key>RubberWindowFrame</key> - <string>160 -58 1280 855 0 0 1280 1002 </string> + <string>560 -58 1280 855 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXBuildResultsModule</string> @@ -712,18 +710,18 @@ <key>TableOfContents</key> <array> <string>3A232CB10FB21F7F00A5C7C2</string> - <string>3AF91D870FF708B2009F6B4F</string> + <string>3A4754380FF732B600EE18BA</string> <string>1CD0528F0623707200166675</string> <string>XCMainBuildResultsModuleGUID</string> </array> <key>ToolbarConfiguration</key> <string>xcode.toolbar.config.buildV3</string> <key>WindowString</key> - <string>160 -58 1280 855 0 0 1280 1002 </string> + <string>560 -58 1280 855 0 0 1680 1028 </string> <key>WindowToolGUID</key> <string>3A232CB10FB21F7F00A5C7C2</string> <key>WindowToolIsVisible</key> - <false/> + <true/> </dict> <dict> <key>FirstTimeWindowDisplayed</key> @@ -806,10 +804,10 @@ <key>Frame</key> <string>{{456, 0}, {544, 297}}</string> <key>RubberWindowFrame</key> - <string>173 384 1000 597 0 0 1280 1002 </string> + <string>420 408 1000 597 0 0 1680 1028 </string> </dict> <key>RubberWindowFrame</key> - <string>173 384 1000 597 0 0 1280 1002 </string> + <string>420 408 1000 597 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXDebugSessionModule</string> @@ -832,18 +830,18 @@ <key>TableOfContents</key> <array> <string>1CD10A99069EF8BA00B06720</string> - <string>3AF91D730FF70813009F6B4F</string> + <string>3A4754390FF732B600EE18BA</string> <string>1C162984064C10D400B95A72</string> - <string>3AF91D740FF70813009F6B4F</string> - <string>3AF91D750FF70813009F6B4F</string> - <string>3AF91D760FF70813009F6B4F</string> - <string>3AF91D770FF70813009F6B4F</string> - <string>3AF91D780FF70813009F6B4F</string> + <string>3A47543A0FF732B600EE18BA</string> + <string>3A47543B0FF732B600EE18BA</string> + <string>3A47543C0FF732B600EE18BA</string> + <string>3A47543D0FF732B600EE18BA</string> + <string>3A47543E0FF732B600EE18BA</string> </array> <key>ToolbarConfiguration</key> <string>xcode.toolbar.config.debugV3</string> <key>WindowString</key> - <string>173 384 1000 597 0 0 1280 1002 </string> + <string>420 408 1000 597 0 0 1680 1028 </string> <key>WindowToolGUID</key> <string>1CD10A99069EF8BA00B06720</string> <key>WindowToolIsVisible</key> Modified: codegen/src/codegen.xcodeproj/drew.pbxuser =================================================================== --- codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:07:34 UTC (rev 114) +++ codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:07:42 UTC (rev 115) @@ -17,15 +17,15 @@ 3A3A77E70FC891BD00DB2D28 /* petriNetSerializer.c:33 */, 3A3A783D0FC894C600DB2D28 /* supervisorCompler.c:116 */, 3A13FC180FDA5F3C0051F833 /* supervisorCompler.c:176 */, - 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:279 */, - 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:272 */, + 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:291 */, + 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:284 */, 3A13FC250FDA5FBA0051F833 /* supervisorCompler.c:174 */, - 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:295 */, - 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:270 */, - 3A13FC750FDA64190051F833 /* supervisor_static_include.h:308 */, - 3A13FC780FDA64220051F833 /* supervisor_static_include.h:301 */, - 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:310 */, - 3A13FC830FDA66170051F833 /* supervisor_static_include.h:303 */, + 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:307 */, + 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:282 */, + 3A13FC750FDA64190051F833 /* supervisor_static_include.h:320 */, + 3A13FC780FDA64220051F833 /* supervisor_static_include.h:313 */, + 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:322 */, + 3A13FC830FDA66170051F833 /* supervisor_static_include.h:315 */, ); codeSenseManager = 3A232C630FB214E900A5C7C2 /* Code sense */; executables = ( @@ -76,68 +76,111 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 267847671; - PBXWorkspaceStateSaveDate = 267847671; + PBXPerProjectTemplateStateSaveDate = 267858581; + PBXWorkspaceStateSaveDate = 267858581; }; perUserProjectItems = { - 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */; - 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */ = 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */ = 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */ = 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */ = 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */; - 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */ = 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */; - 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */ = 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */; - 3A65A7580FC0D5C2004E4F00 /* PBXTextBookmark */ = 3A65A7580FC0D5C2004E4F00 /* PBXTextBookmark */; - 3A65A75C0FC0D5C2004E4F00 /* PBXTextBookmark */ = 3A65A75C0FC0D5C2004E4F00 /* PBXTextBookmark */; - 3A65A7690FC0D8CA004E4F00 /* PBXTextBookmark */ = 3A65A7690FC0D8CA004E4F00 /* PBXTextBookmark */; - 3A65A77A0FC0FC3F004E4F00 /* PBXTextBookmark */ = 3A65A77A0FC0FC3F004E4F00 /* PBXTextBookmark */; - 3A65A9540FC12C01004E4F00 /* PBXTextBookmark */ = 3A65A9540FC12C01004E4F00 /* PBXTextBookmark */; - 3A65A9550FC12C01004E4F00 /* PBXTextBookmark */ = 3A65A9550FC12C01004E4F00 /* PBXTextBookmark */; - 3A7FCEED0FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEED0FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEEF0FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEEF0FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEF20FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEF20FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEF60FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEF60FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEF80FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEF80FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEFD0FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEFD0FBC046D00EF8097 /* PBXTextBookmark */; - 3A99A5FA0FB8D5DF00B1F47C /* PBXTextBookmark */ = 3A99A5FA0FB8D5DF00B1F47C /* PBXTextBookmark */; - 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */ = 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */; - 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */ = 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */; - 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */ = 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */; - 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */ = 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */; - 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */ = 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */; - 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */ = 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */; - 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */ = 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */; - 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */ = 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */; - 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */; - 3AF91D640FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D640FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D650FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D650FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D660FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D660FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D670FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D670FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D680FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D680FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D690FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D690FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D6A0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6A0FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D6B0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6B0FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D6C0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6C0FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D6D0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6D0FF70813009F6B4F /* PBXTextBookmark */; - 3AF91D7E0FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D7E0FF708B2009F6B4F /* PBXTextBookmark */; - 3AF91D7F0FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D7F0FF708B2009F6B4F /* PBXTextBookmark */; - 3AF91D810FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D810FF708B2009F6B4F /* PBXTextBookmark */; - 3AF91D820FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D820FF708B2009F6B4F /* PBXTextBookmark */; - 3AF91D830FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D830FF708B2009F6B4F /* PBXTextBookmark */; - 3AF91D880FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D880FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D8A0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8A0FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D8B0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8B0FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D8C0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8C0FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D8E0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8E0FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D900FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D900FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D910FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D910FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D920FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D920FF70933009F6B4F /* PBXTextBookmark */; - 3AF91D960FF70AD3009F6B4F /* PBXTextBookmark */ = 3AF91D960FF70AD3009F6B4F /* PBXTextBookmark */; - 3AF91D970FF70AD3009F6B4F /* PBXTextBookmark */ = 3AF91D970FF70AD3009F6B4F /* PBXTextBookmark */; - 3AF91D9A0FF711D9009F6B4F /* PBXTextBookmark */ = 3AF91D9A0FF711D9009F6B4F /* PBXTextBookmark */; - 3AF91D9B0FF711D9009F6B4F /* PBXTextBookmark */ = 3AF91D9B0FF711D9009F6B4F /* PBXTextBookmark */; + 3A09E2E10FED6EEA003FAB0D = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E20FED6EEA003FAB0D = 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E70FED6EEA003FAB0D = 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */; + 3A232C980FB21F7F00A5C7C2 = 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */; + 3A232CA00FB21F7F00A5C7C2 = 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */; + 3A232CA10FB21F7F00A5C7C2 = 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */; + 3A47543F0FF732C700EE18BA /* PBXTextBookmark */ = 3A47543F0FF732C700EE18BA /* PBXTextBookmark */; + 3A4754400FF732C700EE18BA /* PBXTextBookmark */ = 3A4754400FF732C700EE18BA /* PBXTextBookmark */; + 3A4754410FF732C700EE18BA /* PBXTextBookmark */ = 3A4754410FF732C700EE18BA /* PBXTextBookmark */; + 3A4754420FF732C700EE18BA /* PBXTextBookmark */ = 3A4754420FF732C700EE18BA /* PBXTextBookmark */; + 3A4754430FF732C700EE18BA /* PBXTextBookmark */ = 3A4754430FF732C700EE18BA /* PBXTextBookmark */; + 3A4754460FF732C700EE18BA /* PBXTextBookmark */ = 3A4754460FF732C700EE18BA /* PBXTextBookmark */; + 3A4754470FF7330D00EE18BA /* PBXTextBookmark */ = 3A4754470FF7330D00EE18BA /* PBXTextBookmark */; + 3A4754480FF7330D00EE18BA /* PBXTextBookmark */ = 3A4754480FF7330D00EE18BA /* PBXTextBookmark */; + 3A4754490FF7330D00EE18BA /* PBXTextBookmark */ = 3A4754490FF7330D00EE18BA /* PBXTextBookmark */; + 3A47544A0FF7330D00EE18BA /* PBXTextBookmark */ = 3A47544A0FF7330D00EE18BA /* PBXTextBookmark */; + 3A47544C0FF7335F00EE18BA /* PBXTextBookmark */ = 3A47544C0FF7335F00EE18BA /* PBXTextBookmark */; + 3A47544D0FF7335F00EE18BA /* PBXTextBookmark */ = 3A47544D0FF7335F00EE18BA /* PBXTextBookmark */; + 3A47544E0FF7337500EE18BA /* PBXTextBookmark */ = 3A47544E0FF7337500EE18BA /* PBXTextBookmark */; + 3A47544F0FF7337500EE18BA /* PBXTextBookmark */ = 3A47544F0FF7337500EE18BA /* PBXTextBookmark */; + 3A4754500FF733C400EE18BA /* PBXTextBookmark */ = 3A4754500FF733C400EE18BA /* PBXTextBookmark */; + 3A4754510FF733C400EE18BA /* PBXTextBookmark */ = 3A4754510FF733C400EE18BA /* PBXTextBookmark */; + 3A4754520FF7340100EE18BA /* PBXTextBookmark */ = 3A4754520FF7340100EE18BA /* PBXTextBookmark */; + 3A4754530FF7340100EE18BA /* PBXTextBookmark */ = 3A4754530FF7340100EE18BA /* PBXTextBookmark */; + 3A4754540FF7346300EE18BA /* PBXTextBookmark */ = 3A4754540FF7346300EE18BA /* PBXTextBookmark */; + 3A4754550FF7346300EE18BA /* PBXTextBookmark */ = 3A4754550FF7346300EE18BA /* PBXTextBookmark */; + 3A4754560FF7347100EE18BA /* PBXTextBookmark */ = 3A4754560FF7347100EE18BA /* PBXTextBookmark */; + 3A4754570FF7347100EE18BA /* PBXTextBookmark */ = 3A4754570FF7347100EE18BA /* PBXTextBookmark */; + 3A47545A0FF7348000EE18BA /* PBXTextBookmark */ = 3A47545A0FF7348000EE18BA /* PBXTextBookmark */; + 3A47545B0FF7348000EE18BA /* PBXTextBookmark */ = 3A47545B0FF7348000EE18BA /* PBXTextBookmark */; + 3A47545D0FF734FD00EE18BA /* PBXTextBookmark */ = 3A47545D0FF734FD00EE18BA /* PBXTextBookmark */; + 3A47545E0FF734FD00EE18BA /* PBXTextBookmark */ = 3A47545E0FF734FD00EE18BA /* PBXTextBookmark */; + 3A47545F0FF7351000EE18BA /* PBXTextBookmark */ = 3A47545F0FF7351000EE18BA /* PBXTextBookmark */; + 3A4754600FF7351000EE18BA /* PBXTextBookmark */ = 3A4754600FF7351000EE18BA /* PBXTextBookmark */; + 3A4754610FF7353C00EE18BA /* PBXTextBookmark */ = 3A4754610FF7353C00EE18BA /* PBXTextBookmark */; + 3A4754620FF7353C00EE18BA /* PBXTextBookmark */ = 3A4754620FF7353C00EE18BA /* PBXTextBookmark */; + 3A4754630FF7355500EE18BA /* PBXTextBookmark */ = 3A4754630FF7355500EE18BA /* PBXTextBookmark */; + 3A4754640FF7355500EE18BA /* PBXTextBookmark */ = 3A4754640FF7355500EE18BA /* PBXTextBookmark */; + 3A4754650FF7356E00EE18BA /* PBXTextBookmark */ = 3A4754650FF7356E00EE18BA /* PBXTextBookmark */; + 3A4754660FF7356E00EE18BA /* PBXTextBookmark */ = 3A4754660FF7356E00EE18BA /* PBXTextBookmark */; + 3A4754670FF7358300EE18BA /* PBXTextBookmark */ = 3A4754670FF7358300EE18BA /* PBXTextBookmark */; + 3A4754680FF7358300EE18BA /* PBXTextBookmark */ = 3A4754680FF7358300EE18BA /* PBXTextBookmark */; + 3A47546B0FF7361D00EE18BA /* PBXTextBookmark */ = 3A47546B0FF7361D00EE18BA /* PBXTextBookmark */; + 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */ = 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */; + 3A47546D0FF7361D00EE18BA /* PBXTextBookmark */ = 3A47546D0FF7361D00EE18BA /* PBXTextBookmark */; + 3A47546E0FF7367500EE18BA /* PBXTextBookmark */ = 3A47546E0FF7367500EE18BA /* PBXTextBookmark */; + 3A47546F0FF7367500EE18BA /* PBXTextBookmark */ = 3A47546F0FF7367500EE18BA /* PBXTextBookmark */; + 3A4754700FF736B800EE18BA /* PBXTextBookmark */ = 3A4754700FF736B800EE18BA /* PBXTextBookmark */; + 3A4754710FF736B800EE18BA /* PBXTextBookmark */ = 3A4754710FF736B800EE18BA /* PBXTextBookmark */; + 3A5D84730FCCA60900465DF2 = 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */; + 3A5D84E40FCCAA6700465DF2 = 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */; + 3A62EEFF0FD5FF7900E60F50 = 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */; + 3A65A7580FC0D5C2004E4F00 = 3A65A7580FC0D5C2004E4F00 /* PBXTextBookmark */; + 3A65A75C0FC0D5C2004E4F00 = 3A65A75C0FC0D5C2004E4F00 /* PBXTextBookmark */; + 3A65A7690FC0D8CA004E4F00 = 3A65A7690FC0D8CA004E4F00 /* PBXTextBookmark */; + 3A65A77A0FC0FC3F004E4F00 = 3A65A77A0FC0FC3F004E4F00 /* PBXTextBookmark */; + 3A65A9540FC12C01004E4F00 = 3A65A9540FC12C01004E4F00 /* PBXTextBookmark */; + 3A65A9550FC12C01004E4F00 = 3A65A9550FC12C01004E4F00 /* PBXTextBookmark */; + 3A7FCEED0FBC046D00EF8097 = 3A7FCEED0FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEEF0FBC046D00EF8097 = 3A7FCEEF0FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEF20FBC046D00EF8097 = 3A7FCEF20FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEF60FBC046D00EF8097 = 3A7FCEF60FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEF80FBC046D00EF8097 = 3A7FCEF80FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEFD0FBC046D00EF8097 = 3A7FCEFD0FBC046D00EF8097 /* PBXTextBookmark */; + 3A99A5FA0FB8D5DF00B1F47C = 3A99A5FA0FB8D5DF00B1F47C /* PBXTextBookmark */; + 3A99A6650FB8E3DC00B1F47C = 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */; + 3A99A6C60FB8E78600B1F47C = 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */; + 3A99A7400FB8EC6800B1F47C = 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */; + 3AEAF9100FB2697C00D61E73 = 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */; + 3AEAF9120FB2697C00D61E73 = 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */; + 3AEAF9130FB2697C00D61E73 = 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */; + 3AEE0D8F0FB3ACB600248D5F = 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */; + 3AEE0D900FB3ACB600248D5F = 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */; + 3AF1CBDF0FF49FD8002E11EE = 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */; + 3AF91D640FF70813009F6B4F = 3AF91D640FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D650FF70813009F6B4F = 3AF91D650FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D660FF70813009F6B4F = 3AF91D660FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D670FF70813009F6B4F = 3AF91D670FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D680FF70813009F6B4F = 3AF91D680FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D690FF70813009F6B4F = 3AF91D690FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6A0FF70813009F6B4F = 3AF91D6A0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6B0FF70813009F6B4F = 3AF91D6B0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6C0FF70813009F6B4F = 3AF91D6C0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6D0FF70813009F6B4F = 3AF91D6D0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D7E0FF708B2009F6B4F = 3AF91D7E0FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D7F0FF708B2009F6B4F = 3AF91D7F0FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D810FF708B2009F6B4F = 3AF91D810FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D820FF708B2009F6B4F = 3AF91D820FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D830FF708B2009F6B4F = 3AF91D830FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D880FF70933009F6B4F = 3AF91D880FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8A0FF70933009F6B4F = 3AF91D8A0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8B0FF70933009F6B4F = 3AF91D8B0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8C0FF70933009F6B4F = 3AF91D8C0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8E0FF70933009F6B4F = 3AF91D8E0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D900FF70933009F6B4F = 3AF91D900FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D910FF70933009F6B4F = 3AF91D910FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D920FF70933009F6B4F = 3AF91D920FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D960FF70AD3009F6B4F = 3AF91D960FF70AD3009F6B4F /* PBXTextBookmark */; + 3AF91D970FF70AD3009F6B4F = 3AF91D970FF70AD3009F6B4F /* PBXTextBookmark */; + 3AF91D9A0FF711D9009F6B4F = 3AF91D9A0FF711D9009F6B4F /* PBXTextBookmark */; + 3AF91D9B0FF711D9009F6B4F = 3AF91D9B0FF711D9009F6B4F /* PBXTextBookmark */; }; sourceControlManager = 3A232C620FB214E900A5C7C2 /* Source Control */; userBuildSettings = { @@ -146,7 +189,7 @@ 08FB7796FE84155DC02AAC07 /* main.c */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {1011, 980}}"; - sepNavSelRange = "{61, 0}"; + sepNavSelRange = "{1682, 0}"; sepNavVisRange = "{0, 1463}"; sepNavWindowFrame = "{{199, 162}, {1027, 575}}"; }; @@ -198,7 +241,7 @@ modificationTime = 267219111.612896; state = 2; }; - 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:279 */ = { + 3A13FC1E0FDA5F810051F833 /* supervisor_static_include.h:291 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -210,12 +253,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 279; + lineNumber = 291; location = codegen; modificationTime = 267219111.612992; state = 2; }; - 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:272 */ = { + 3A13FC220FDA5F970051F833 /* supervisor_static_include.h:284 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -226,7 +269,7 @@ fileReference = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; hitCount = 0; ignoreCount = 0; - lineNumber = 272; + lineNumber = 284; location = codegen; modificationTime = 267219111.613271; state = 2; @@ -247,7 +290,7 @@ modificationTime = 267219111.613516; state = 2; }; - 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:295 */ = { + 3A13FC660FDA62D90051F833 /* supervisor_static_include.h:307 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -259,12 +302,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 295; + lineNumber = 307; location = codegen; modificationTime = 267219111.613607; state = 2; }; - 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:270 */ = { + 3A13FC680FDA62DA0051F833 /* supervisor_static_include.h:282 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -275,12 +318,12 @@ fileReference = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; hitCount = 0; ignoreCount = 0; - lineNumber = 270; + lineNumber = 282; location = codegen; modificationTime = 267219111.613867; state = 2; }; - 3A13FC750FDA64190051F833 /* supervisor_static_include.h:308 */ = { + 3A13FC750FDA64190051F833 /* supervisor_static_include.h:320 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -292,12 +335,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 308; + lineNumber = 320; location = codegen; modificationTime = 267219111.614107; state = 2; }; - 3A13FC780FDA64220051F833 /* supervisor_static_include.h:301 */ = { + 3A13FC780FDA64220051F833 /* supervisor_static_include.h:313 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -309,12 +352,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 301; + lineNumber = 313; location = codegen; modificationTime = 267219111.614566; state = 2; }; - 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:310 */ = { + 3A13FC800FDA64DC0051F833 /* supervisor_static_include.h:322 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -326,12 +369,12 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 310; + lineNumber = 322; location = codegen; modificationTime = 267219111.614813; state = 2; }; - 3A13FC830FDA66170051F833 /* supervisor_static_include.h:303 */ = { + 3A13FC830FDA66170051F833 /* supervisor_static_include.h:315 */ = { isa = PBXFileBreakpoint; actions = ( ); @@ -343,7 +386,7 @@ functionName = "do_new_contract(char* buffer, int plant, reservation_structure *r)"; hitCount = 0; ignoreCount = 0; - lineNumber = 303; + lineNumber = 315; modificationTime = 267219111.768971; state = 0; }; @@ -498,6 +541,441 @@ modificationTime = 267219111.61281; state = 2; }; + 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1011, 2698}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1511}"; + }; + }; + 3A47543F0FF732C700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; + name = "text.c: 17"; + rLen = 4; + rLoc = 263; + rType = 0; + vrLen = 878; + vrLoc = 85; + }; + 3A4754400FF732C700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; + name = "supervisorCompiler.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1330; + vrLoc = 0; + }; + 3A4754410FF732C700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; + name = "text.c: 17"; + rLen = 4; + rLoc = 263; + rType = 0; + vrLen = 878; + vrLoc = 85; + }; + 3A4754420FF732C700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; + name = "supervisorCompiler.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1330; + vrLoc = 0; + }; + 3A4754430FF732C700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* main.c */; + name = "main.c: 55"; + rLen = 0; + rLoc = 1682; + rType = 0; + vrLen = 1463; + vrLoc = 0; + }; + 3A4754460FF732C700EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 440"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1282; + vrLoc = 5612; + }; + 3A4754470FF7330D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* main.c */; + name = "main.c: 55"; + rLen = 0; + rLoc = 1682; + rType = 0; + vrLen = 1463; + vrLoc = 0; + }; + 3A4754480FF7330D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* main.c */; + name = "main.c: 55"; + rLen = 0; + rLoc = 1682; + rType = 0; + vrLen = 1463; + vrLoc = 0; + }; + 3A4754490FF7330D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 647; + rType = 0; + vrLen = 1172; + vrLoc = 0; + }; + 3A47544A0FF7330D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 440"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1282; + vrLoc = 5610; + }; + 3A47544C0FF7335F00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 477"; + rLen = 0; + rLoc = 12370; + rType = 0; + vrLen = 1134; + vrLoc = 11656; + }; + 3A47544D0FF7335F00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 440"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1282; + vrLoc = 5612; + }; + 3A47544E0FF7337500EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 647; + rType = 0; + vrLen = 1172; + vrLoc = 0; + }; + 3A47544F0FF7337500EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 440"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1282; + vrLoc = 5610; + }; + 3A4754500FF733C400EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 137"; + rLen = 0; + rLoc = 3528; + rType = 0; + vrLen = 985; + vrLoc = 2688; + }; + 3A4754510FF733C400EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 441"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1356; + vrLoc = 5697; + }; + 3A4754520FF7340100EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 97"; + rLen = 0; + rLoc = 2491; + rType = 0; + vrLen = 1165; + vrLoc = 2152; + }; + 3A4754530FF7340100EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 441"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1348; + vrLoc = 5790; + }; + 3A4754540FF7346300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 105"; + rLen = 0; + rLoc = 2710; + rType = 0; + vrLen = 1069; + vrLoc = 1943; + }; + 3A4754550FF7346300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 441"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1370; + vrLoc = 5885; + }; + 3A4754560FF7347100EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 105"; + rLen = 24; + rLoc = 2686; + rType = 0; + vrLen = 1089; + vrLoc = 1943; + }; + 3A4754570FF7347100EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 441"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1370; + vrLoc = 5905; + }; + 3A47545A0FF7348000EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 105"; + rLen = 0; + rLoc = 2685; + rType = 0; + vrLen = 1092; + vrLoc = 1943; + }; + 3A47545B0FF7348000EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 441"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1370; + vrLoc = 5908; + }; + 3A47545D0FF734FD00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 179"; + rLen = 0; + rLoc = 4340; + rType = 0; + vrLen = 959; + vrLoc = 3695; + }; + 3A47545E0FF734FD00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 451"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1249; + vrLoc = 5821; + }; + 3A47545F0FF7351000EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 169"; + rLen = 0; + rLoc = 4152; + rType = 0; + vrLen = 972; + vrLoc = 3409; + }; + 3A4754600FF7351000EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 451"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1158; + vrLoc = 5349; + }; + 3A4754610FF7353C00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 91"; + rLen = 0; + rLoc = 2306; + rType = 0; + vrLen = 1170; + vrLoc = 2151; + }; + 3A4754620FF7353C00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 451"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1400; + vrLoc = 5828; + }; + 3A4754630FF7355500EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 647; + rType = 0; + vrLen = 1174; + vrLoc = 0; + }; + 3A4754640FF7355500EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 451"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1283; + vrLoc = 5408; + }; + 3A4754650FF7356E00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 347"; + rLen = 0; + rLoc = 8456; + rType = 0; + vrLen = 1073; + vrLoc = 7822; + }; + 3A4754660FF7356E00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 451"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1283; + vrLoc = 5408; + }; + 3A4754670FF7358300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 25"; + rLen = 0; + rLoc = 647; + rType = 0; + vrLen = 1172; + vrLoc = 0; + }; + 3A4754680FF7358300EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 451"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1283; + vrLoc = 5406; + }; + 3A47546B0FF7361D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + comments = "error: syntax error before ')' token"; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + rLen = 0; + rLoc = 508; + rType = 1; + }; + 3A47546C0FF7361D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 507"; + rLen = 0; + rLoc = 12936; + rType = 0; + vrLen = 1206; + vrLoc = 11937; + }; + 3A47546D0FF7361D00EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1283; + vrLoc = 5427; + }; + 3A47546E0FF7367500EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 505"; + rLen = 0; + rLoc = 12803; + rType = 0; + vrLen = 1170; + vrLoc = 11974; + }; + 3A47546F0FF7367500EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1283; + vrLoc = 5427; + }; + 3A4754700FF736B800EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 520"; + rLen = 0; + rLoc = 13178; + rType = 0; + vrLen = 1205; + vrLoc = 11974; + }; + 3A4754710FF736B800EE18BA /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 452"; + rLen = 0; + rLoc = 11176; + rType = 0; + vrLen = 1283; + vrLoc = 5427; + }; 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 3A99A6C70FB8E78600B1F47C /* signal.h */; @@ -821,9 +1299,9 @@ }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {1332, 8176}}"; - sepNavSelRange = "{10859, 0}"; - sepNavVisRange = "{5612, 1282}"; + sepNavIntBoundsRect = "{{0, 0}, {968, 8890}}"; + sepNavSelRange = "{11176, 0}"; + sepNavVisRange = "{5427, 1283}"; sepNavWindowFrame = "{{130, 91}, {1027, 911}}"; }; }; @@ -832,7 +1310,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 15"; rLen = 0; - rLoc = 13289; + rLoc = 13728; rType = 0; vrLen = 292; vrLoc = 0; @@ -873,6 +1351,12 @@ }; }; 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */ = { + isa = PBXFileReference; + fileEncoding = 4; + lastKnownFileType = sourcecode.c.c; + name = supervisorCompler.c; + path = /Volumes/y/drew/Dropbox/Code/pntool/codegen/src/supervisorCompler.c; + sourceTree = "<absolute>"; uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {922, 2702}}"; sepNavSelRange = "{4872, 0}"; @@ -1002,7 +1486,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10859; + rLoc = 11176; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -1272,7 +1756,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10859; + rLoc = 11176; rType = 0; vrLen = 1282; vrLoc = 5612; Modified: codegen/src/codegen.xcodeproj/project.pbxproj =================================================================== --- codegen/src/codegen.xcodeproj/project.pbxproj 2009-06-28 06:07:34 UTC (rev 114) +++ codegen/src/codegen.xcodeproj/project.pbxproj 2009-06-28 06:07:42 UTC (rev 115) @@ -10,11 +10,11 @@ 3A232CFA0FB2253D00A5C7C2 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* main.c */; }; 3A232CFB0FB2254000A5C7C2 /* codegen.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A232C830FB21E0600A5C7C2 /* codegen.c */; }; 3A232D0D0FB22F3300A5C7C2 /* petriNetSerializer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A232D0C0FB22F3300A5C7C2 /* petriNetSerializer.c */; }; + 3A4754350FF732AB00EE18BA /* supervisorCompiler.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */; }; 3A752B7F0FE6A2B300091C76 /* general.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A752B780FE6A2B300091C76 /* general.c */; }; 3A752B800FE6A2B300091C76 /* matrix.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A752B7A0FE6A2B300091C76 /* matrix.c */; }; 3A752B820FE6A2B300091C76 /* pns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A752B7D0FE6A2B300091C76 /* pns.c */; }; 3A99A5B70FB8C45B00B1F47C /* text.c in Sources */ = {isa = PBXBuildFile; fileRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; }; - 3AEAF9060FB2696400D61E73 /* supervisorCompler.c in Sources */ = {isa = PBXBuildFile; fileRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; }; 3AEE0D6F0FB3AA4900248D5F /* plantCompiler.c in Sources */ = {isa = PBXBuildFile; fileRef = 3AEE0D6D0FB3AA4900248D5F /* plantCompiler.c */; }; 8DD76FB00486AB0100D96B5E /* codegen.1 in CopyFiles */ = {isa = PBXBuildFile; fileRef = C6A0FF2C0290799A04C91782 /* codegen.1 */; }; /* End PBXBuildFile section */ @@ -38,6 +38,7 @@ 3A232C830FB21E0600A5C7C2 /* codegen.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = codegen.c; sourceTree = "<group>"; }; 3A232D0B0FB22F3300A5C7C2 /* petriNetSerializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = petriNetSerializer.h; sourceTree = "<group>"; }; 3A232D0C0FB22F3300A5C7C2 /* petriNetSerializer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = petriNetSerializer.c; sourceTree = "<group>"; }; + 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = supervisorCompiler.c; sourceTree = "<group>"; }; 3A752B780FE6A2B300091C76 /* general.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = general.c; sourceTree = "<group>"; }; 3A752B790FE6A2B300091C76 /* general.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = general.h; sourceTree = "<group>"; }; 3A752B7A0FE6A2B300091C76 /* matrix.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = matrix.c; sourceTree = "<group>"; }; @@ -49,7 +50,6 @@ 3A99A6160FB8D70200B1F47C /* pn1PCode.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = pn1PCode.txt; sourceTree = "<group>"; }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = supervisor_static_include.h; sourceTree = "<group>"; }; 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = supervisorCompiler.h; sourceTree = "<group>"; }; - 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = supervisorCompler.c; sourceTree = "<group>"; }; 3AEE0D6D0FB3AA4900248D5F /* plantCompiler.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = plantCompiler.c; sourceTree = "<group>"; }; 3AEE0D6E0FB3AA4900248D5F /* plantCompiler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = plantCompiler.h; sourceTree = "<group>"; }; 8DD76FB20486AB0100D96B5E /* codegen */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = codegen; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -130,7 +130,7 @@ isa = PBXGroup; children = ( 3AEAF9040FB2696400D61E73 /* supervisorCompiler.h */, - 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */, + 3A4754340FF732AB00EE18BA /* supervisorCompiler.c */, 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */, ); name = Supervisor; @@ -190,12 +190,12 @@ 3A232CFB0FB2254000A5C7C2 /* codegen.c in Sources */, 3A232CFA0FB2253D00A5C7C2 /* main.c in Sources */, 3A232D0D0FB22F3300A5C7C2 /* petriNetSerializer.c in Sources */, - 3AEAF9060FB2696400D61E73 /* supervisorCompler.c in Sources */, 3AEE0D6F0FB3AA4900248D5F /* plantCompiler.c in Sources */, 3A99A5B70FB8C45B00B1F47C /* text.c in Sources */, 3A752B7F0FE6A2B300091C76 /* general.c in Sources */, 3A752B800FE6A2B300091C76 /* matrix.c in Sources */, 3A752B820FE6A2B300091C76 /* pns.c in Sources */, + 3A4754350FF732AB00EE18BA /* supervisorCompiler.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; Modified: codegen/src/main.c =================================================================== --- codegen/src/main.c 2009-06-28 06:07:34 UTC (rev 114) +++ codegen/src/main.c 2009-06-28 06:07:42 UTC (rev 115) @@ -52,7 +52,7 @@ printf("Beginning code generation...\n"); - GenerateProgam(&supervisor, "supervisor.c", plantarray, 2); + GenerateProgram(&supervisor, "supervisor.c", plantarray, 2); //VERSION 1 //GenerateProgam(&supervisor, plantarray, 2); Modified: codegen/src/supervisor_static_include.h =================================================================== --- codegen/src/supervisor_static_include.h 2009-06-28 06:07:34 UTC (rev 114) +++ codegen/src/supervisor_static_include.h 2009-06-28 06:07:42 UTC (rev 115) @@ -22,7 +22,8 @@ #include <assert.h> #include <limits.h> #define BUFFER_SIZE 30 -//#define NOISY_DEBUG +#define NOISY_DEBUG +#define BUFFER_DEBUG int somebodys_firing_transition = -1; /* ///////////////////////DATASTRUCTURES/////////////////////// @@ -88,7 +89,7 @@ void send_fire_msg(unique_identify_fire_something *u,int rid,int pipe) { char firemsg[BUFFER_SIZE]; - sprintf(firemsg,"___Y%d:%d-%d",rid,u->label,u->t); + sprintf(firemsg,"___Y%d:%d-%d\n",rid,u->label,u->t); write(pipe,firemsg,strlen(firemsg)); } @@ -102,6 +103,9 @@ } else { +#ifdef NOISY_DEBUG + printf("can locally fire: %d\n",can_transition_locally_fire(u->t, supervisor)); +#endif if (can_transition_locally_fire(u->t, supervisor)) { somebodys_firing_transition = u->t; @@ -161,11 +165,19 @@ int can_transition_locally_fire(int t, pns* supervisor) { if (somebodys_firing_transition != -1) //todo: make this much more efficient + { +#ifdef NOISY_DEBUG + printf("Can't fire because somebodys_firing_transition: %d\n",somebodys_firing_transition); +#endif return NO; + } int p; for(p = 0; p < supervisor->pnum; p++) { int weight = GetMatrixEl(&(supervisor->in), p, t); +#ifdef NOISY_DEBUG + printf("Weight = %d\n",weight); +#endif if (weight > 1) { if (supervisor->marking[p] <= weight) @@ -333,7 +345,7 @@ int rid = atoi(&buffer[4]); reservation *res = get_reservation_by_id(r, plant, rid); unique_identify_fire_something *u = &res->u[res->selected_fire_something]; - printf("Plant %d claims it fired %d-%d on id %d",plant,u->t,u->label,res->id); + printf("Plant %d claims it fired %d-%d on id %d\n",plant,u->t,u->label,res->id); fire_transition_local(u->t, supervisor, how_many_plants); cancel_reservation(r, plant, res->id); somebodys_firing_transition = -1; @@ -473,8 +485,8 @@ { for(i = 0; i < how_many_plants; i++) { - // close_reservation_pass(supervisor,how_many_plants, r_structure, pipes[i][PARENT_TO_CHILD][WRITE_END]); - // simulation_pass_local(supervisor, how_many_plants, blocked_transitions); + close_reservation_pass(supervisor,how_many_plants, r_structure, pipes[i][PARENT_TO_CHILD][WRITE_END]); + simulation_pass_local(supervisor, how_many_plants, blocked_transitions); int pipe = pipes[i][CHILD_TO_PARENT][READ_END]; //printf("listening on %d\n",pipe); int a = read(pipe,r,1); @@ -488,17 +500,24 @@ if (r[0]=='\n') //we've got a newline { +#ifdef BUFFER_DEBUG + printf("Buffer is of size %d\n",strlen(buffer)); +#endif do_new_contract(buffer[i],supervisor,how_many_plants,i, r_structure,pipes[i][PARENT_TO_CHILD][WRITE_END]); + buffer[i][0]=0; - - buffer[i][0]=0; + } else //go ahead and append whatever { - //printf("Just got: %d; putting it in %d\n",r[0],i); +#ifdef BUFFER_DEBUG + printf("Just got: %d; putting it in %d\n",r[0],i); +#endif r[1]=0; strcat(buffer[i],r); - //printf("Buffer contains: %s\n",buffer[i]); +#ifdef BUFFER_DEBUG + printf("Buffer contains: %s\n",buffer[i]); +#endif } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <com...@us...> - 2009-06-28 06:07:36
|
Revision: 114 http://pntool.svn.sourceforge.net/pntool/?rev=114&view=rev Author: compaqdrew Date: 2009-06-28 06:07:34 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Better codegen main_function.c integration Modified Paths: -------------- Makefile codegen/src/codegen.c codegen/src/codegen.h pnheaders/main_function.c Modified: Makefile =================================================================== --- Makefile 2009-06-28 06:07:26 UTC (rev 113) +++ Makefile 2009-06-28 06:07:34 UTC (rev 114) @@ -36,8 +36,8 @@ # cd $(SPNBOX); make # cd $(TRANSLATOR); make -main_function.o: $(PNHEADERS)/main_function.c $(PNHEADERS)/pns.h $(SPNBOX)/spnbox.h - $(COMPILER) -c $(PNHEADERS)/main_function.c -Ispnbox +main_function.o: $(PNHEADERS)/main_function.c $(PNHEADERS)/pns.h $(SPNBOX)/spnbox.h $(CODEGEN)/src/codegen.h + $(COMPILER) -c $(PNHEADERS)/main_function.c -Ispnbox -Icodegen/src clean: rm -f main_function.o Modified: codegen/src/codegen.c =================================================================== --- codegen/src/codegen.c 2009-06-28 06:07:26 UTC (rev 113) +++ codegen/src/codegen.c 2009-06-28 06:07:34 UTC (rev 114) @@ -16,7 +16,7 @@ #include "petriNetSerializer.h" -int GenerateProgam(pns *supervisor, char* sname, process** prarray, int num) +int GenerateProgram(pns *supervisor, char* sname, process** prarray, int num) { //Temporary solution to make current code work with new version pns pnarray[num]; Modified: codegen/src/codegen.h =================================================================== --- codegen/src/codegen.h 2009-06-28 06:07:26 UTC (rev 113) +++ codegen/src/codegen.h 2009-06-28 06:07:34 UTC (rev 114) @@ -9,7 +9,7 @@ */ #include "../../pnheaders/pns.h" -int GenerateProgam(pns *supervisor, char* sname, process** prarray, int num); +int GenerateProgram(pns *supervisor, char* sname, process** prarray, int num); /* Generates the supervisor and the process source files. It also generates the makefile that should be used to build them. Note that sname is the name of the supervisor program. Further, num is the number of processes. */ Modified: pnheaders/main_function.c =================================================================== --- pnheaders/main_function.c 2009-06-28 06:07:26 UTC (rev 113) +++ pnheaders/main_function.c 2009-06-28 06:07:34 UTC (rev 114) @@ -1,5 +1,6 @@ #include "pns.h" #include "spnbox.h" +#include "codegen.h" //this is the real GenerateProgram call (as opposed to GenerateProgam) int verb; @@ -134,7 +135,7 @@ // Generate code - GenerateProgam(&pnsv, sp->name, sp->process_array, sp->process_num); + GenerateProgram(&pnsv, sp->name, sp->process_array, sp->process_num); dealloc(&pnsv); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <com...@us...> - 2009-06-28 06:07:34
|
Revision: 113 http://pntool.svn.sourceforge.net/pntool/?rev=113&view=rev Author: compaqdrew Date: 2009-06-28 06:07:26 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Makefile support Modified Paths: -------------- Makefile codegen/Makefile codegen/src/codegen.h codegen/src/codegen.xcodeproj/drew.mode1v3 codegen/src/codegen.xcodeproj/drew.pbxuser codegen/src/main.c codegen/src/petriNetSerializer.h codegen/src/plantCompiler.h codegen/src/supervisorCompiler.h codegen/src/text.h Added Paths: ----------- codegen/src/supervisorCompiler.c Removed Paths: ------------- codegen/src/supervisorCompler.c Modified: Makefile =================================================================== --- Makefile 2009-06-28 06:04:00 UTC (rev 112) +++ Makefile 2009-06-28 06:07:26 UTC (rev 113) @@ -7,7 +7,7 @@ # the object code. # # 2) Place all relevant object files and libraries in the same directory. -# +# Codegen note: makefile is in codegen/, however .o files are codegen/src/*.o # 3) Place no other object files in that directory (or else please make # appropriate changes below). # @@ -24,18 +24,25 @@ PNHEADERS=pnheaders SPNBOX=spnbox CODEGEN=codegen +CODEGENOBJS = codegen/src TRANSLATOR=translator ct: objectfiles main_function.o - $(COMPILER) -o ct $(PNHEADERS)/*.o $(CODEGEN)/*.o $(SPNBOX)/*.o \ + $(COMPILER) -o ct $(PNHEADERS)/*.o $(CODEGENOBJS)/*.o $(SPNBOX)/*.o \ $(TRANSLATOR)/*.o main_function.o $(SPNBOX)/*.a - objectfiles: cd $(PNHEADERS); make -# cd $(CODEGEN); make - cd $(SPNBOX); make + cd $(CODEGEN); make static +# cd $(SPNBOX); make # cd $(TRANSLATOR); make main_function.o: $(PNHEADERS)/main_function.c $(PNHEADERS)/pns.h $(SPNBOX)/spnbox.h $(COMPILER) -c $(PNHEADERS)/main_function.c -Ispnbox +clean: + rm -f main_function.o + cd codegen; make clean + + +distclean: clean + cd codegen; make distclean Modified: codegen/Makefile =================================================================== --- codegen/Makefile 2009-06-28 06:04:00 UTC (rev 112) +++ codegen/Makefile 2009-06-28 06:07:26 UTC (rev 113) @@ -1,16 +1,40 @@ -COMPILER=gcc -g +#codegen makefile -example: pnexample.o pns.o matrix.o general.o - $(COMPILER) -o pnexample pnexample.o pns.o matrix.o general.o +COMPILER=gcc -general.o: general.c general.h - $(COMPILER) -c general.c +PNHEADERS = ../pnheaders/general.o ../pnheaders/matrix.o ../pnheaders/pns.o +STANDALONE = src/main.o +OBJS = src/codegen.o src/plantCompiler.o src/supervisorCompiler.o src/petriNetSerializer.o src/text.o +B = \033[32m +E = \033[0m -matrix.o: matrix.c matrix.h general.h - $(COMPILER) -c matrix.c -pns.o: pns.c pns.h general.h matrix.h - $(COMPILER) -c pns.c -pnexample.o: pnexample.c pns.h general.h matrix.h - $(COMPILER) -c pnexample.c +standalone: pnslib static $(STANDALONE) + echo "$(B)Making standalone files...$(E)" + $(COMPILER) -c $(STANDALONE) + echo "$(B)Linking it all up...$(E)" + $(COMPILER) -o codegen $(OBJS) $(PNHEADERS) $(STANDALONE) + echo "$(B)Done$(E)" + +pnslib: $(PNHEADERS) + echo "$(B) Precompiling pnheaders...$(E)" + $(COMPILER) -c $(PNHEADERS) + echo "$(B)Done$(E)" + +static: $(OBJS) pnslib + echo "$(B) Making pure codegen...$(E)" + $(COMPILER) -c $(OBJS) $(PNHEADERS) + echo "$(B)Done$(E)" + +clean: + echo "$(B)Cleaning...$(E)" + rm -f $(OBJS) + rm -f $(STANDALONE) + rm -f codegen + echo "$(B)Done$(E)" +distclean: clean + echo "$(B)Making distclean...$(E)" + rm -f $(PNHEADERS) + echo "$(B)Done$(E)" + Modified: codegen/src/codegen.h =================================================================== --- codegen/src/codegen.h 2009-06-28 06:04:00 UTC (rev 112) +++ codegen/src/codegen.h 2009-06-28 06:07:26 UTC (rev 113) @@ -7,7 +7,7 @@ * * The methods not in the .h file should be treated as private */ -#include "pns.h" +#include "../../pnheaders/pns.h" int GenerateProgam(pns *supervisor, char* sname, process** prarray, int num); /* Generates the supervisor and the process source files. It also generates Modified: codegen/src/codegen.xcodeproj/drew.mode1v3 =================================================================== --- codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:04:00 UTC (rev 112) +++ codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:07:26 UTC (rev 113) @@ -216,10 +216,10 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3AF1CBDF0FF49FD8002E11EE</string> + <string>3AF91D9B0FF711D9009F6B4F</string> <key>history</key> <array> - <string>3A09E3320FEDAA69003FAB0D</string> + <string>3AF1CBDF0FF49FD8002E11EE</string> </array> </dict> <key>SplitCount</key> @@ -235,49 +235,9 @@ <key>PBXModuleWindowStatusBarHidden2</key> <false/> <key>RubberWindowFrame</key> - <string>336 173 1027 855 0 0 1680 1028 </string> + <string>130 147 1027 855 0 0 1280 1002 </string> </dict> </dict> - <dict> - <key>Content</key> - <dict> - <key>PBXProjectModuleGUID</key> - <string>3A13FC520FDA612F0051F833</string> - <key>PBXProjectModuleLabel</key> - <string>supervisorCompler.c</string> - <key>PBXSplitModuleInNavigatorKey</key> - <dict> - <key>Split0</key> - <dict> - <key>PBXProjectModuleGUID</key> - <string>3A13FC530FDA612F0051F833</string> - <key>PBXProjectModuleLabel</key> - <string>supervisorCompler.c</string> - <key>_historyCapacity</key> - <integer>0</integer> - <key>bookmark</key> - <string>3AF1CBE00FF49FD8002E11EE</string> - <key>history</key> - <array> - <string>3A09E3330FEDAA69003FAB0D</string> - </array> - </dict> - <key>SplitCount</key> - <string>1</string> - </dict> - <key>StatusBarVisibility</key> - <true/> - </dict> - <key>Geometry</key> - <dict> - <key>Frame</key> - <string>{{0, 20}, {981, 542}}</string> - <key>PBXModuleWindowStatusBarHidden2</key> - <false/> - <key>RubberWindowFrame</key> - <string>278 231 981 583 0 0 1680 1028 </string> - </dict> - </dict> </array> <key>PerspectiveWidths</key> <array> @@ -362,8 +322,7 @@ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <array> <array> - <integer>9</integer> - <integer>4</integer> + <integer>16</integer> <integer>3</integer> <integer>0</integer> </array> @@ -388,7 +347,7 @@ <real>186</real> </array> <key>RubberWindowFrame</key> - <string>400 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXSmartGroupTreeModule</string> @@ -404,7 +363,7 @@ <key>PBXProjectModuleGUID</key> <string>1CE0B20306471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>pns.c</string> + <string>text.c</string> <key>PBXSplitModuleInNavigatorKey</key> <dict> <key>Split0</key> @@ -412,11 +371,11 @@ <key>PBXProjectModuleGUID</key> <string>1CE0B20406471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>pns.c</string> + <string>text.c</string> <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3AF1CBDC0FF49FD8002E11EE</string> + <string>3AF91D9A0FF711D9009F6B4F</string> <key>history</key> <array> <string>3A7FCEED0FBC046D00EF8097</string> @@ -427,20 +386,21 @@ <string>3A65A9550FC12C01004E4F00</string> <string>3A5D84730FCCA60900465DF2</string> <string>3A5D84E40FCCAA6700465DF2</string> - <string>3A5D84FE0FCCADFB00465DF2</string> <string>3A62EEFF0FD5FF7900E60F50</string> - <string>3A62EF000FD5FF7900E60F50</string> - <string>3A62EF030FD5FF7900E60F50</string> - <string>3A62EF040FD5FF7900E60F50</string> - <string>3A62EF380FD6012C00E60F50</string> - <string>3AF3E42A0FDA4B8400D2224F</string> - <string>3A09E2D00FED6DF6003FAB0D</string> - <string>3A09E2E10FED6EEA003FAB0D</string> <string>3A09E2E20FED6EEA003FAB0D</string> - <string>3A09E2E30FED6EEA003FAB0D</string> - <string>3A09E2F40FED6F4E003FAB0D</string> - <string>3AF1CBD90FF49FD8002E11EE</string> - <string>3AF1CBDA0FF49FD8002E11EE</string> + <string>3AF91D640FF70813009F6B4F</string> + <string>3AF91D650FF70813009F6B4F</string> + <string>3AF91D660FF70813009F6B4F</string> + <string>3AF91D670FF70813009F6B4F</string> + <string>3AF91D680FF70813009F6B4F</string> + <string>3AF91D7E0FF708B2009F6B4F</string> + <string>3AF91D7F0FF708B2009F6B4F</string> + <string>3AF91D880FF70933009F6B4F</string> + <string>3AF91D8A0FF70933009F6B4F</string> + <string>3AF91D8B0FF70933009F6B4F</string> + <string>3AF91D8C0FF70933009F6B4F</string> + <string>3AF91D960FF70AD3009F6B4F</string> + <string>3A09E2E10FED6EEA003FAB0D</string> </array> <key>prevStack</key> <array> @@ -450,7 +410,6 @@ <string>3AEAF9100FB2697C00D61E73</string> <string>3AEAF9120FB2697C00D61E73</string> <string>3AEAF9130FB2697C00D61E73</string> - <string>3AEAF9A10FB27BB900D61E73</string> <string>3AEE0D8F0FB3ACB600248D5F</string> <string>3AEE0D900FB3ACB600248D5F</string> <string>3A99A5FA0FB8D5DF00B1F47C</string> @@ -464,8 +423,19 @@ <string>3A65A7690FC0D8CA004E4F00</string> <string>3A65A77A0FC0FC3F004E4F00</string> <string>3A09E2E70FED6EEA003FAB0D</string> - <string>3A09E2E90FED6EEA003FAB0D</string> - <string>3AF1CBDB0FF49FD8002E11EE</string> + <string>3AF91D690FF70813009F6B4F</string> + <string>3AF91D6A0FF70813009F6B4F</string> + <string>3AF91D6B0FF70813009F6B4F</string> + <string>3AF91D6C0FF70813009F6B4F</string> + <string>3AF91D6D0FF70813009F6B4F</string> + <string>3AF91D810FF708B2009F6B4F</string> + <string>3AF91D820FF708B2009F6B4F</string> + <string>3AF91D830FF708B2009F6B4F</string> + <string>3AF91D8E0FF70933009F6B4F</string> + <string>3AF91D900FF70933009F6B4F</string> + <string>3AF91D910FF70933009F6B4F</string> + <string>3AF91D920FF70933009F6B4F</string> + <string>3AF91D970FF70AD3009F6B4F</string> </array> </dict> <key>SplitCount</key> @@ -479,7 +449,7 @@ <key>Frame</key> <string>{{0, 0}, {1072, 658}}</string> <key>RubberWindowFrame</key> - <string>400 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXNavigatorGroup</string> @@ -499,7 +469,7 @@ <key>Frame</key> <string>{{0, 663}, {1072, 152}}</string> <key>RubberWindowFrame</key> - <string>400 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> </dict> <key>Module</key> <string>XCDetailModule</string> @@ -523,9 +493,9 @@ </array> <key>TableOfContents</key> <array> - <string>3AF1CBDD0FF49FD8002E11EE</string> + <string>3AF91D6F0FF70813009F6B4F</string> <string>1CE0B1FE06471DED0097A5F4</string> - <string>3AF1CBDE0FF49FD8002E11EE</string> + <string>3AF91D700FF70813009F6B4F</string> <string>1CE0B20306471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string> </array> @@ -659,13 +629,13 @@ <integer>5</integer> <key>WindowOrderList</key> <array> + <string>3A232CB10FB21F7F00A5C7C2</string> <string>1CD10A99069EF8BA00B06720</string> - <string>3A13FC520FDA612F0051F833</string> <string>3ACFDCB10FDA81C200C504DE</string> - <string>/Volumes/y/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> + <string>/Users/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> </array> <key>WindowString</key> - <string>400 172 1280 856 0 0 1680 1028 </string> + <string>-4 146 1280 856 0 0 1280 1002 </string> <key>WindowToolsV3</key> <array> <dict> @@ -742,7 +712,7 @@ <key>TableOfContents</key> <array> <string>3A232CB10FB21F7F00A5C7C2</string> - <string>3A09E2DA0FED6DF6003FAB0D</string> + <string>3AF91D870FF708B2009F6B4F</string> <string>1CD0528F0623707200166675</string> <string>XCMainBuildResultsModuleGUID</string> </array> @@ -836,10 +806,10 @@ <key>Frame</key> <string>{{456, 0}, {544, 297}}</string> <key>RubberWindowFrame</key> - <string>420 408 1000 597 0 0 1680 1028 </string> + <string>173 384 1000 597 0 0 1280 1002 </string> </dict> <key>RubberWindowFrame</key> - <string>420 408 1000 597 0 0 1680 1028 </string> + <string>173 384 1000 597 0 0 1280 1002 </string> </dict> <key>Module</key> <string>PBXDebugSessionModule</string> @@ -862,18 +832,18 @@ <key>TableOfContents</key> <array> <string>1CD10A99069EF8BA00B06720</string> - <string>3AF1CBE10FF49FD8002E11EE</string> + <string>3AF91D730FF70813009F6B4F</string> <string>1C162984064C10D400B95A72</string> - <string>3AF1CBE20FF49FD8002E11EE</string> - <string>3AF1CBE30FF49FD8002E11EE</string> - <string>3AF1CBE40FF49FD8002E11EE</string> - <string>3AF1CBE50FF49FD8002E11EE</string> - <string>3AF1CBE60FF49FD8002E11EE</string> + <string>3AF91D740FF70813009F6B4F</string> + <string>3AF91D750FF70813009F6B4F</string> + <string>3AF91D760FF70813009F6B4F</string> + <string>3AF91D770FF70813009F6B4F</string> + <string>3AF91D780FF70813009F6B4F</string> </array> <key>ToolbarConfiguration</key> <string>xcode.toolbar.config.debugV3</string> <key>WindowString</key> - <string>420 408 1000 597 0 0 1680 1028 </string> + <string>173 384 1000 597 0 0 1280 1002 </string> <key>WindowToolGUID</key> <string>1CD10A99069EF8BA00B06720</string> <key>WindowToolIsVisible</key> Modified: codegen/src/codegen.xcodeproj/drew.pbxuser =================================================================== --- codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:04:00 UTC (rev 112) +++ codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:07:26 UTC (rev 113) @@ -76,369 +76,68 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 267689938; - PBXWorkspaceStateSaveDate = 267689938; + PBXPerProjectTemplateStateSaveDate = 267847671; + PBXWorkspaceStateSaveDate = 267847671; }; perUserProjectItems = { - 3A09E2D00FED6DF6003FAB0D = 3A09E2D00FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D10FED6DF6003FAB0D = 3A09E2D10FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D20FED6DF6003FAB0D = 3A09E2D20FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D30FED6DF6003FAB0D = 3A09E2D30FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D40FED6DF6003FAB0D = 3A09E2D40FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D50FED6DF6003FAB0D = 3A09E2D50FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D80FED6DF6003FAB0D = 3A09E2D80FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D90FED6DF6003FAB0D = 3A09E2D90FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2E10FED6EEA003FAB0D = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E20FED6EEA003FAB0D = 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E30FED6EEA003FAB0D = 3A09E2E30FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E50FED6EEA003FAB0D = 3A09E2E50FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E60FED6EEA003FAB0D = 3A09E2E60FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E70FED6EEA003FAB0D = 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E80FED6EEA003FAB0D = 3A09E2E80FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E90FED6EEA003FAB0D = 3A09E2E90FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EB0FED6EEA003FAB0D = 3A09E2EB0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EC0FED6EEA003FAB0D = 3A09E2EC0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EE0FED6EEA003FAB0D = 3A09E2EE0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EF0FED6EEA003FAB0D = 3A09E2EF0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2F00FED6EEA003FAB0D = 3A09E2F00FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2F40FED6F4E003FAB0D = 3A09E2F40FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F50FED6F4E003FAB0D = 3A09E2F50FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F60FED6F4E003FAB0D = 3A09E2F60FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F70FED6F4E003FAB0D = 3A09E2F70FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F80FED6F4E003FAB0D = 3A09E2F80FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F90FED6F4E003FAB0D = 3A09E2F90FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E3020FED6F9E003FAB0D = 3A09E3020FED6F9E003FAB0D /* PBXTextBookmark */; - 3A09E3030FED6F9E003FAB0D = 3A09E3030FED6F9E003FAB0D /* PBXTextBookmark */; - 3A09E3040FED6F9E003FAB0D = 3A09E3040FED6F9E003FAB0D /* PBXTextBookmark */; - 3A09E3060FED6FBC003FAB0D = 3A09E3060FED6FBC003FAB0D /* PBXTextBookmark */; - 3A09E3070FED6FBC003FAB0D = 3A09E3070FED6FBC003FAB0D /* PBXTextBookmark */; - 3A09E3080FED6FBC003FAB0D = 3A09E3080FED6FBC003FAB0D /* PBXTextBookmark */; - 3A09E30A0FED6FCC003FAB0D = 3A09E30A0FED6FCC003FAB0D /* PBXTextBookmark */; - 3A09E30B0FED6FCC003FAB0D = 3A09E30B0FED6FCC003FAB0D /* PBXTextBookmark */; - 3A09E30C0FED6FCC003FAB0D = 3A09E30C0FED6FCC003FAB0D /* PBXTextBookmark */; - 3A09E30D0FED6FEB003FAB0D = 3A09E30D0FED6FEB003FAB0D /* PBXTextBookmark */; - 3A09E30E0FED6FEB003FAB0D = 3A09E30E0FED6FEB003FAB0D /* PBXTextBookmark */; - 3A09E30F0FED6FEB003FAB0D = 3A09E30F0FED6FEB003FAB0D /* PBXTextBookmark */; - 3A09E3110FED704A003FAB0D = 3A09E3110FED704A003FAB0D /* PBXTextBookmark */; - 3A09E3120FED704A003FAB0D = 3A09E3120FED704A003FAB0D /* PBXTextBookmark */; - 3A09E3130FED704A003FAB0D = 3A09E3130FED704A003FAB0D /* PBXTextBookmark */; - 3A09E3160FED706F003FAB0D = 3A09E3160FED706F003FAB0D /* PBXTextBookmark */; - 3A09E3170FED706F003FAB0D = 3A09E3170FED706F003FAB0D /* PBXTextBookmark */; - 3A09E3180FED706F003FAB0D = 3A09E3180FED706F003FAB0D /* PBXTextBookmark */; - 3A09E31B0FED708C003FAB0D = 3A09E31B0FED708C003FAB0D /* PBXTextBookmark */; - 3A09E31C0FED708C003FAB0D = 3A09E31C0FED708C003FAB0D /* PBXTextBookmark */; - 3A09E31E0FED70AD003FAB0D = 3A09E31E0FED70AD003FAB0D /* PBXTextBookmark */; - 3A09E31F0FED70AD003FAB0D = 3A09E31F0FED70AD003FAB0D /* PBXTextBookmark */; - 3A09E3200FED70AD003FAB0D = 3A09E3200FED70AD003FAB0D /* PBXTextBookmark */; - 3A09E3210FED70E5003FAB0D = 3A09E3210FED70E5003FAB0D /* PBXTextBookmark */; - 3A09E3220FED70E5003FAB0D = 3A09E3220FED70E5003FAB0D /* PBXTextBookmark */; - 3A09E3230FED70E5003FAB0D = 3A09E3230FED70E5003FAB0D /* PBXTextBookmark */; - 3A09E3240FED70FD003FAB0D = 3A09E3240FED70FD003FAB0D /* PBXTextBookmark */; - 3A09E3250FED70FD003FAB0D = 3A09E3250FED70FD003FAB0D /* PBXTextBookmark */; - 3A09E3260FED70FD003FAB0D = 3A09E3260FED70FD003FAB0D /* PBXTextBookmark */; - 3A09E3270FED7121003FAB0D = 3A09E3270FED7121003FAB0D /* PBXTextBookmark */; - 3A09E3280FED7121003FAB0D = 3A09E3280FED7121003FAB0D /* PBXTextBookmark */; - 3A09E3290FED7121003FAB0D = 3A09E3290FED7121003FAB0D /* PBXTextBookmark */; - 3A09E32A0FED7130003FAB0D = 3A09E32A0FED7130003FAB0D /* PBXTextBookmark */; - 3A09E32B0FED7130003FAB0D = 3A09E32B0FED7130003FAB0D /* PBXTextBookmark */; - 3A09E32C0FED7130003FAB0D = 3A09E32C0FED7130003FAB0D /* PBXTextBookmark */; - 3A09E32D0FED7148003FAB0D = 3A09E32D0FED7148003FAB0D /* PBXTextBookmark */; - 3A09E32E0FED7148003FAB0D = 3A09E32E0FED7148003FAB0D /* PBXTextBookmark */; - 3A09E32F0FED7148003FAB0D = 3A09E32F0FED7148003FAB0D /* PBXTextBookmark */; - 3A09E3300FEDAA69003FAB0D = 3A09E3300FEDAA69003FAB0D /* PBXTextBookmark */; - 3A09E3310FEDAA69003FAB0D = 3A09E3310FEDAA69003FAB0D /* PBXTextBookmark */; - 3A09E3320FEDAA69003FAB0D = 3A09E3320FEDAA69003FAB0D /* PBXTextBookmark */; - 3A09E3330FEDAA69003FAB0D = 3A09E3330FEDAA69003FAB0D /* PBXTextBookmark */; - 3A232C980FB21F7F00A5C7C2 = 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232C9A0FB21F7F00A5C7C2 = 3A232C9A0FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232C9B0FB21F7F00A5C7C2 = 3A232C9B0FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232C9D0FB21F7F00A5C7C2 = 3A232C9D0FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232C9E0FB21F7F00A5C7C2 = 3A232C9E0FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232C9F0FB21F7F00A5C7C2 = 3A232C9F0FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232CA00FB21F7F00A5C7C2 = 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A232CA10FB21F7F00A5C7C2 = 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */; - 3A3A773C0FC8893000DB2D28 = 3A3A773C0FC8893000DB2D28 /* PBXTextBookmark */; - 3A5D84730FCCA60900465DF2 = 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */; - 3A5D84E40FCCAA6700465DF2 = 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */; - 3A5D84FE0FCCADFB00465DF2 = 3A5D84FE0FCCADFB00465DF2 /* PBXTextBookmark */; - 3A62EEFF0FD5FF7900E60F50 = 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */; - 3A62EF000FD5FF7900E60F50 = 3A62EF000FD5FF7900E60F50 /* PBXTextBookmark */; - 3A62EF010FD5FF7900E60F50 = 3A62EF010FD5FF7900E60F50 /* PBXTextBookmark */; - 3A62EF030FD5FF7900E60F50 = 3A62EF030FD5FF7900E60F50 /* PBXTextBookmark */; - 3A62EF040FD5FF7900E60F50 = 3A62EF040FD5FF7900E60F50 /* PBXTextBookmark */; - 3A62EF380FD6012C00E60F50 = 3A62EF380FD6012C00E60F50 /* PBXTextBookmark */; - 3A65A7580FC0D5C2004E4F00 = 3A65A7580FC0D5C2004E4F00 /* PBXTextBookmark */; - 3A65A75C0FC0D5C2004E4F00 = 3A65A75C0FC0D5C2004E4F00 /* PBXTextBookmark */; - 3A65A7690FC0D8CA004E4F00 = 3A65A7690FC0D8CA004E4F00 /* PBXTextBookmark */; - 3A65A77A0FC0FC3F004E4F00 = 3A65A77A0FC0FC3F004E4F00 /* PBXTextBookmark */; - 3A65A9540FC12C01004E4F00 = 3A65A9540FC12C01004E4F00 /* PBXTextBookmark */; - 3A65A9550FC12C01004E4F00 = 3A65A9550FC12C01004E4F00 /* PBXTextBookmark */; - 3A752B860FE6A2DC00091C76 = 3A752B860FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B870FE6A2DC00091C76 = 3A752B870FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B880FE6A2DC00091C76 = 3A752B880FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B890FE6A2DC00091C76 = 3A752B890FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B8A0FE6A2DC00091C76 = 3A752B8A0FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B8B0FE6A2DC00091C76 = 3A752B8B0FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B8C0FE6A2DC00091C76 = 3A752B8C0FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B8F0FE6A2DC00091C76 = 3A752B8F0FE6A2DC00091C76 /* PBXTextBookmark */; - 3A752B900FE6A2DC00091C76 = 3A752B900FE6A2DC00091C76 /* PBXTextBookmark */; - 3A7DF3FD0FC6944300A18013 = 3A7DF3FD0FC6944300A18013 /* PBXTextBookmark */; - 3A7DF4610FC7D55D00A18013 = 3A7DF4610FC7D55D00A18013 /* PBXTextBookmark */; - 3A7FCEED0FBC046D00EF8097 = 3A7FCEED0FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEEF0FBC046D00EF8097 = 3A7FCEEF0FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEF20FBC046D00EF8097 = 3A7FCEF20FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEF60FBC046D00EF8097 = 3A7FCEF60FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEF80FBC046D00EF8097 = 3A7FCEF80FBC046D00EF8097 /* PBXTextBookmark */; - 3A7FCEFD0FBC046D00EF8097 = 3A7FCEFD0FBC046D00EF8097 /* PBXTextBookmark */; - 3A99A5FA0FB8D5DF00B1F47C = 3A99A5FA0FB8D5DF00B1F47C /* PBXTextBookmark */; - 3A99A6650FB8E3DC00B1F47C = 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */; - 3A99A6C60FB8E78600B1F47C = 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */; - 3A99A7400FB8EC6800B1F47C = 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */; - 3A99A7960FB8F21100B1F47C = 3A99A7960FB8F21100B1F47C /* PBXTextBookmark */; - 3A99A7980FB8F21100B1F47C = 3A99A7980FB8F21100B1F47C /* PBXTextBookmark */; - 3AA340F70FE9EC1D004E156E = 3AA340F70FE9EC1D004E156E /* PBXTextBookmark */; - 3AA340FA0FE9EC1D004E156E = 3AA340FA0FE9EC1D004E156E /* PBXTextBookmark */; - 3AA340FB0FE9EC1D004E156E = 3AA340FB0FE9EC1D004E156E /* PBXTextBookmark */; - 3AA9B2520FCC9354001346EA = 3AA9B2520FCC9354001346EA /* PBXTextBookmark */; - 3AA9B2530FCC9354001346EA = 3AA9B2530FCC9354001346EA /* PBXTextBookmark */; - 3ACEFBB10FDA7F2600B47227 = 3ACEFBB10FDA7F2600B47227 /* PBXTextBookmark */; - 3ACFDCA30FDA7F4800C504DE = 3ACFDCA30FDA7F4800C504DE /* PBXTextBookmark */; - 3ACFDCC90FDA828500C504DE = 3ACFDCC90FDA828500C504DE /* PBXTextBookmark */; - 3ACFDCCD0FDA82A900C504DE = 3ACFDCCD0FDA82A900C504DE /* PBXTextBookmark */; - 3ACFDCCF0FDA82A900C504DE = 3ACFDCCF0FDA82A900C504DE /* PBXTextBookmark */; - 3ACFDCD30FDA843700C504DE = 3ACFDCD30FDA843700C504DE /* PBXTextBookmark */; - 3ACFDCD60FDA843700C504DE = 3ACFDCD60FDA843700C504DE /* PBXTextBookmark */; - 3ACFDCF90FDA862C00C504DE = 3ACFDCF90FDA862C00C504DE /* PBXTextBookmark */; - 3ACFDCFD0FDA865000C504DE = 3ACFDCFD0FDA865000C504DE /* PBXTextBookmark */; - 3ACFDCFF0FDA865000C504DE = 3ACFDCFF0FDA865000C504DE /* PBXTextBookmark */; - 3ACFDD000FDA865000C504DE = 3ACFDD000FDA865000C504DE /* PBXTextBookmark */; - 3ACFDD180FDA866300C504DE = 3ACFDD180FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD190FDA866300C504DE = 3ACFDD190FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD1A0FDA866300C504DE = 3ACFDD1A0FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD1B0FDA866300C504DE = 3ACFDD1B0FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD1C0FDA866300C504DE = 3ACFDD1C0FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD1F0FDA866300C504DE = 3ACFDD1F0FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD200FDA866300C504DE = 3ACFDD200FDA866300C504DE /* PBXTextBookmark */; - 3ACFDD270FDA86CC00C504DE = 3ACFDD270FDA86CC00C504DE /* PBXTextBookmark */; - 3ACFDD280FDA86CC00C504DE = 3ACFDD280FDA86CC00C504DE /* PBXTextBookmark */; - 3ACFDD290FDA86CC00C504DE = 3ACFDD290FDA86CC00C504DE /* PBXTextBookmark */; - 3ACFDD2A0FDA86FA00C504DE = 3ACFDD2A0FDA86FA00C504DE /* PBXTextBookmark */; - 3ACFDD2B0FDA86FA00C504DE = 3ACFDD2B0FDA86FA00C504DE /* PBXTextBookmark */; - 3ACFDD2C0FDA86FA00C504DE = 3ACFDD2C0FDA86FA00C504DE /* PBXTextBookmark */; - 3ACFDD2D0FDA874F00C504DE = 3ACFDD2D0FDA874F00C504DE /* PBXTextBookmark */; - 3ACFDD2E0FDA874F00C504DE = 3ACFDD2E0FDA874F00C504DE /* PBXTextBookmark */; - 3ACFDD2F0FDA874F00C504DE = 3ACFDD2F0FDA874F00C504DE /* PBXTextBookmark */; - 3ACFDD300FDA875700C504DE = 3ACFDD300FDA875700C504DE /* PBXTextBookmark */; - 3ACFDD310FDA875700C504DE = 3ACFDD310FDA875700C504DE /* PBXTextBookmark */; - 3ACFDD320FDA875700C504DE = 3ACFDD320FDA875700C504DE /* PBXTextBookmark */; - 3ACFDD330FDA877D00C504DE = 3ACFDD330FDA877D00C504DE /* PBXTextBookmark */; - 3ACFDD340FDA877D00C504DE = 3ACFDD340FDA877D00C504DE /* PBXTextBookmark */; - 3ACFDD350FDA877D00C504DE = 3ACFDD350FDA877D00C504DE /* PBXTextBookmark */; - 3ACFDD360FDA87B300C504DE = 3ACFDD360FDA87B300C504DE /* PBXTextBookmark */; - 3ACFDD370FDA87B300C504DE = 3ACFDD370FDA87B300C504DE /* PBXTextBookmark */; - 3ACFDD380FDA87B300C504DE = 3ACFDD380FDA87B300C504DE /* PBXTextBookmark */; - 3ACFDD390FDA87C800C504DE = 3ACFDD390FDA87C800C504DE /* PBXTextBookmark */; - 3ACFDD3A0FDA87C800C504DE = 3ACFDD3A0FDA87C800C504DE /* PBXTextBookmark */; - 3ACFDD3B0FDA87C800C504DE = 3ACFDD3B0FDA87C800C504DE /* PBXTextBookmark */; - 3ACFDD3C0FDA880F00C504DE = 3ACFDD3C0FDA880F00C504DE /* PBXTextBookmark */; - 3ACFDD3D0FDA880F00C504DE = 3ACFDD3D0FDA880F00C504DE /* PBXTextBookmark */; - 3ACFDD3E0FDA880F00C504DE = 3ACFDD3E0FDA880F00C504DE /* PBXTextBookmark */; - 3ACFDD3F0FDA883300C504DE = 3ACFDD3F0FDA883300C504DE /* PBXTextBookmark */; - 3ACFDD400FDA883300C504DE = 3ACFDD400FDA883300C504DE /* PBXTextBookmark */; - 3ACFDD410FDA883300C504DE = 3ACFDD410FDA883300C504DE /* PBXTextBookmark */; - 3ACFDD420FDA885A00C504DE = 3ACFDD420FDA885A00C504DE /* PBXTextBookmark */; - 3ACFDD430FDA885A00C504DE = 3ACFDD430FDA885A00C504DE /* PBXTextBookmark */; - 3ACFDD440FDA885A00C504DE = 3ACFDD440FDA885A00C504DE /* PBXTextBookmark */; - 3ACFDD450FDA886100C504DE = 3ACFDD450FDA886100C504DE /* PBXTextBookmark */; - 3ACFDD460FDA886100C504DE = 3ACFDD460FDA886100C504DE /* PBXTextBookmark */; - 3ACFDD470FDA886100C504DE = 3ACFDD470FDA886100C504DE /* PBXTextBookmark */; - 3ACFDD480FDA887F00C504DE = 3ACFDD480FDA887F00C504DE /* PBXTextBookmark */; - 3ACFDD490FDA887F00C504DE = 3ACFDD490FDA887F00C504DE /* PBXTextBookmark */; - 3ACFDD4A0FDA887F00C504DE = 3ACFDD4A0FDA887F00C504DE /* PBXTextBookmark */; - 3ACFDD4B0FDA889200C504DE = 3ACFDD4B0FDA889200C504DE /* PBXTextBookmark */; - 3ACFDD4C0FDA889200C504DE = 3ACFDD4C0FDA889200C504DE /* PBXTextBookmark */; - 3ACFDD4D0FDA889200C504DE = 3ACFDD4D0FDA889200C504DE /* PBXTextBookmark */; - 3ACFDD4E0FDA88A800C504DE = 3ACFDD4E0FDA88A800C504DE /* PBXTextBookmark */; - 3ACFDD4F0FDA88A800C504DE = 3ACFDD4F0FDA88A800C504DE /* PBXTextBookmark */; - 3ACFDD500FDA88A800C504DE = 3ACFDD500FDA88A800C504DE /* PBXTextBookmark */; - 3ACFDD510FDA88C900C504DE = 3ACFDD510FDA88C900C504DE /* PBXTextBookmark */; - 3ACFDD520FDA88C900C504DE = 3ACFDD520FDA88C900C504DE /* PBXTextBookmark */; - 3ACFDD530FDA88C900C504DE = 3ACFDD530FDA88C900C504DE /* PBXTextBookmark */; - 3ACFDD540FDA892900C504DE = 3ACFDD540FDA892900C504DE /* PBXTextBookmark */; - 3ACFDD550FDA892900C504DE = 3ACFDD550FDA892900C504DE /* PBXTextBookmark */; - 3ACFDD560FDA892900C504DE = 3ACFDD560FDA892900C504DE /* PBXTextBookmark */; - 3ACFDD570FDA894000C504DE = 3ACFDD570FDA894000C504DE /* PBXTextBookmark */; - 3ACFDD580FDA894000C504DE = 3ACFDD580FDA894000C504DE /* PBXTextBookmark */; - 3ACFDD590FDA894000C504DE = 3ACFDD590FDA894000C504DE /* PBXTextBookmark */; - 3ACFDD5A0FDA895900C504DE = 3ACFDD5A0FDA895900C504DE /* PBXTextBookmark */; - 3ACFDD5B0FDA895900C504DE = 3ACFDD5B0FDA895900C504DE /* PBXTextBookmark */; - 3ACFDD5C0FDA895900C504DE = 3ACFDD5C0FDA895900C504DE /* PBXTextBookmark */; - 3ACFDD5D0FDA896700C504DE = 3ACFDD5D0FDA896700C504DE /* PBXTextBookmark */; - 3ACFDD5E0FDA896700C504DE = 3ACFDD5E0FDA896700C504DE /* PBXTextBookmark */; - 3ACFDD5F0FDA896700C504DE = 3ACFDD5F0FDA896700C504DE /* PBXTextBookmark */; - 3ACFDD600FDA898B00C504DE = 3ACFDD600FDA898B00C504DE /* PBXTextBookmark */; - 3ACFDD610FDA898B00C504DE = 3ACFDD610FDA898B00C504DE /* PBXTextBookmark */; - 3ACFDD620FDA898B00C504DE = 3ACFDD620FDA898B00C504DE /* PBXTextBookmark */; - 3ACFDD630FDA89E100C504DE = 3ACFDD630FDA89E100C504DE /* PBXTextBookmark */; - 3ACFDD640FDA89E100C504DE = 3ACFDD640FDA89E100C504DE /* PBXTextBookmark */; - 3ACFDD650FDA89E100C504DE = 3ACFDD650FDA89E100C504DE /* PBXTextBookmark */; - 3ACFDD660FDA8A5300C504DE = 3ACFDD660FDA8A5300C504DE /* PBXTextBookmark */; - 3ACFDD670FDA8A5300C504DE = 3ACFDD670FDA8A5300C504DE /* PBXTextBookmark */; - 3ACFDD680FDA8A5300C504DE = 3ACFDD680FDA8A5300C504DE /* PBXTextBookmark */; - 3ACFDD690FDA8A7000C504DE = 3ACFDD690FDA8A7000C504DE /* PBXTextBookmark */; - 3ACFDD6A0FDA8A7000C504DE = 3ACFDD6A0FDA8A7000C504DE /* PBXTextBookmark */; - 3ACFDD6B0FDA8A7000C504DE = 3ACFDD6B0FDA8A7000C504DE /* PBXTextBookmark */; - 3ACFDD6C0FDA8A9500C504DE = 3ACFDD6C0FDA8A9500C504DE /* PBXTextBookmark */; - 3ACFDD6D0FDA8A9500C504DE = 3ACFDD6D0FDA8A9500C504DE /* PBXTextBookmark */; - 3ACFDD6E0FDA8A9500C504DE = 3ACFDD6E0FDA8A9500C504DE /* PBXTextBookmark */; - 3ACFDD6F0FDA8ABD00C504DE = 3ACFDD6F0FDA8ABD00C504DE /* PBXTextBookmark */; - 3ACFDD700FDA8ABD00C504DE = 3ACFDD700FDA8ABD00C504DE /* PBXTextBookmark */; - 3ACFDD710FDA8ABD00C504DE = 3ACFDD710FDA8ABD00C504DE /* PBXTextBookmark */; - 3ACFDD720FDA8AE000C504DE = 3ACFDD720FDA8AE000C504DE /* PBXTextBookmark */; - 3ACFDD730FDA8AE000C504DE = 3ACFDD730FDA8AE000C504DE /* PBXTextBookmark */; - 3ACFDD740FDA8AE000C504DE = 3ACFDD740FDA8AE000C504DE /* PBXTextBookmark */; - 3ACFDD750FDA8AFF00C504DE = 3ACFDD750FDA8AFF00C504DE /* PBXTextBookmark */; - 3ACFDD760FDA8AFF00C504DE = 3ACFDD760FDA8AFF00C504DE /* PBXTextBookmark */; - 3ACFDD770FDA8AFF00C504DE = 3ACFDD770FDA8AFF00C504DE /* PBXTextBookmark */; - 3ACFDD780FDA8B1C00C504DE = 3ACFDD780FDA8B1C00C504DE /* PBXTextBookmark */; - 3ACFDD790FDA8B1C00C504DE = 3ACFDD790FDA8B1C00C504DE /* PBXTextBookmark */; - 3ACFDD7A0FDA8B1C00C504DE = 3ACFDD7A0FDA8B1C00C504DE /* PBXTextBookmark */; - 3ACFDD7B0FDA8B4400C504DE = 3ACFDD7B0FDA8B4400C504DE /* PBXTextBookmark */; - 3ACFDD7C0FDA8B4400C504DE = 3ACFDD7C0FDA8B4400C504DE /* PBXTextBookmark */; - 3ACFDD7D0FDA8B4400C504DE = 3ACFDD7D0FDA8B4400C504DE /* PBXTextBookmark */; - 3ACFDD7E0FDA8B5100C504DE = 3ACFDD7E0FDA8B5100C504DE /* PBXTextBookmark */; - 3ACFDD7F0FDA8B5100C504DE = 3ACFDD7F0FDA8B5100C504DE /* PBXTextBookmark */; - 3ACFDD800FDA8B5100C504DE = 3ACFDD800FDA8B5100C504DE /* PBXTextBookmark */; - 3ACFDD810FDA8B6400C504DE = 3ACFDD810FDA8B6400C504DE /* PBXTextBookmark */; - 3ACFDD820FDA8B6400C504DE = 3ACFDD820FDA8B6400C504DE /* PBXTextBookmark */; - 3ACFDD830FDA8B6400C504DE = 3ACFDD830FDA8B6400C504DE /* PBXTextBookmark */; - 3ACFDD840FDA8B6E00C504DE = 3ACFDD840FDA8B6E00C504DE /* PBXTextBookmark */; - 3ACFDD850FDA8B6E00C504DE = 3ACFDD850FDA8B6E00C504DE /* PBXTextBookmark */; - 3ACFDD860FDA8B6E00C504DE = 3ACFDD860FDA8B6E00C504DE /* PBXTextBookmark */; - 3ACFDD870FDA8B8D00C504DE = 3ACFDD870FDA8B8D00C504DE /* PBXTextBookmark */; - 3ACFDD880FDA8B8D00C504DE = 3ACFDD880FDA8B8D00C504DE /* PBXTextBookmark */; - 3ACFDD890FDA8B8D00C504DE = 3ACFDD890FDA8B8D00C504DE /* PBXTextBookmark */; - 3ACFDD8A0FDA8BAC00C504DE = 3ACFDD8A0FDA8BAC00C504DE /* PBXTextBookmark */; - 3ACFDD8B0FDA8BAC00C504DE = 3ACFDD8B0FDA8BAC00C504DE /* PBXTextBookmark */; - 3ACFDD8C0FDA8BAC00C504DE = 3ACFDD8C0FDA8BAC00C504DE /* PBXTextBookmark */; - 3ACFDD8D0FDA8C0500C504DE = 3ACFDD8D0FDA8C0500C504DE /* PBXTextBookmark */; - 3ACFDD8E0FDA8C0500C504DE = 3ACFDD8E0FDA8C0500C504DE /* PBXTextBookmark */; - 3ACFDD8F0FDA8C0500C504DE = 3ACFDD8F0FDA8C0500C504DE /* PBXTextBookmark */; - 3ACFDD900FDA8C7000C504DE = 3ACFDD900FDA8C7000C504DE /* PBXTextBookmark */; - 3ACFDD910FDA8C7000C504DE = 3ACFDD910FDA8C7000C504DE /* PBXTextBookmark */; - 3ACFDD920FDA8C7000C504DE = 3ACFDD920FDA8C7000C504DE /* PBXTextBookmark */; - 3ACFDD930FDA8CA100C504DE = 3ACFDD930FDA8CA100C504DE /* PBXTextBookmark */; - 3ACFDD940FDA8CA100C504DE = 3ACFDD940FDA8CA100C504DE /* PBXTextBookmark */; - 3ACFDD950FDA8CA100C504DE = 3ACFDD950FDA8CA100C504DE /* PBXTextBookmark */; - 3ACFDD960FDA8D6900C504DE = 3ACFDD960FDA8D6900C504DE /* PBXTextBookmark */; - 3ACFDD970FDA8D6900C504DE = 3ACFDD970FDA8D6900C504DE /* PBXTextBookmark */; - 3ACFDD980FDA8D6900C504DE = 3ACFDD980FDA8D6900C504DE /* PBXTextBookmark */; - 3ACFDD990FDA8D8800C504DE = 3ACFDD990FDA8D8800C504DE /* PBXTextBookmark */; - 3ACFDD9A0FDA8D8800C504DE = 3ACFDD9A0FDA8D8800C504DE /* PBXTextBookmark */; - 3ACFDD9B0FDA8D8800C504DE = 3ACFDD9B0FDA8D8800C504DE /* PBXTextBookmark */; - 3ACFDD9C0FDA8D9A00C504DE = 3ACFDD9C0FDA8D9A00C504DE /* PBXTextBookmark */; - 3ACFDD9D0FDA8D9A00C504DE = 3ACFDD9D0FDA8D9A00C504DE /* PBXTextBookmark */; - 3ACFDD9E0FDA8D9A00C504DE = 3ACFDD9E0FDA8D9A00C504DE /* PBXTextBookmark */; - 3ACFDD9F0FDA8DA600C504DE = 3ACFDD9F0FDA8DA600C504DE /* PBXTextBookmark */; - 3ACFDDA00FDA8DA600C504DE = 3ACFDDA00FDA8DA600C504DE /* PBXTextBookmark */; - 3ACFDDA10FDA8DA600C504DE = 3ACFDDA10FDA8DA600C504DE /* PBXTextBookmark */; - 3ACFDDA20FDA8DB900C504DE = 3ACFDDA20FDA8DB900C504DE /* PBXTextBookmark */; - 3ACFDDA30FDA8DB900C504DE = 3ACFDDA30FDA8DB900C504DE /* PBXTextBookmark */; - 3ACFDDA40FDA8DB900C504DE = 3ACFDDA40FDA8DB900C504DE /* PBXTextBookmark */; - 3ACFDDA50FDA8DD500C504DE = 3ACFDDA50FDA8DD500C504DE /* PBXTextBookmark */; - 3ACFDDA60FDA8DD500C504DE = 3ACFDDA60FDA8DD500C504DE /* PBXTextBookmark */; - 3ACFDDA70FDA8DD500C504DE = 3ACFDDA70FDA8DD500C504DE /* PBXTextBookmark */; - 3ACFDDA80FDA8E0000C504DE = 3ACFDDA80FDA8E0000C504DE /* PBXTextBookmark */; - 3ACFDDA90FDA8E0000C504DE = 3ACFDDA90FDA8E0000C504DE /* PBXTextBookmark */; - 3ACFDDAA0FDA8E0000C504DE = 3ACFDDAA0FDA8E0000C504DE /* PBXTextBookmark */; - 3ACFDDAB0FDA8EA500C504DE = 3ACFDDAB0FDA8EA500C504DE /* PBXTextBookmark */; - 3ACFDDAC0FDA8EA500C504DE = 3ACFDDAC0FDA8EA500C504DE /* PBXTextBookmark */; - 3ACFDDAD0FDA8EA500C504DE = 3ACFDDAD0FDA8EA500C504DE /* PBXTextBookmark */; - 3ACFDDAE0FDA8EE600C504DE = 3ACFDDAE0FDA8EE600C504DE /* PBXTextBookmark */; - 3ACFDDAF0FDA8EE600C504DE = 3ACFDDAF0FDA8EE600C504DE /* PBXTextBookmark */; - 3ACFDDB00FDA8EE600C504DE = 3ACFDDB00FDA8EE600C504DE /* PBXTextBookmark */; - 3ACFDDB10FDA8EFA00C504DE = 3ACFDDB10FDA8EFA00C504DE /* PBXTextBookmark */; - 3ACFDDB20FDA8EFA00C504DE = 3ACFDDB20FDA8EFA00C504DE /* PBXTextBookmark */; - 3ACFDDB30FDA8EFA00C504DE = 3ACFDDB30FDA8EFA00C504DE /* PBXTextBookmark */; - 3ACFDDB40FDA8F5200C504DE = 3ACFDDB40FDA8F5200C504DE /* PBXTextBookmark */; - 3ACFDDB50FDA8F5200C504DE = 3ACFDDB50FDA8F5200C504DE /* PBXTextBookmark */; - 3ACFDDB60FDA8F5200C504DE = 3ACFDDB60FDA8F5200C504DE /* PBXTextBookmark */; - 3ACFDDB70FDA8F9300C504DE = 3ACFDDB70FDA8F9300C504DE /* PBXTextBookmark */; - 3ACFDDB80FDA8F9300C504DE = 3ACFDDB80FDA8F9300C504DE /* PBXTextBookmark */; - 3ACFDDB90FDA8F9300C504DE = 3ACFDDB90FDA8F9300C504DE /* PBXTextBookmark */; - 3ACFDDBA0FDA8FFC00C504DE = 3ACFDDBA0FDA8FFC00C504DE /* PBXTextBookmark */; - 3ACFDDBB0FDA8FFC00C504DE = 3ACFDDBB0FDA8FFC00C504DE /* PBXTextBookmark */; - 3ACFDDBC0FDA8FFC00C504DE = 3ACFDDBC0FDA8FFC00C504DE /* PBXTextBookmark */; - 3ACFDDBE0FDA902D00C504DE = 3ACFDDBE0FDA902D00C504DE /* PBXTextBookmark */; - 3ACFDDBF0FDA902D00C504DE = 3ACFDDBF0FDA902D00C504DE /* PBXTextBookmark */; - 3ACFDDC00FDA902D00C504DE = 3ACFDDC00FDA902D00C504DE /* PBXTextBookmark */; - 3ACFDDC20FDA90A300C504DE = 3ACFDDC20FDA90A300C504DE /* PBXTextBookmark */; - 3ACFDDC30FDA90A300C504DE = 3ACFDDC30FDA90A300C504DE /* PBXTextBookmark */; - 3ACFDDC40FDA90A300C504DE = 3ACFDDC40FDA90A300C504DE /* PBXTextBookmark */; - 3ACFDDC60FDA913000C504DE = 3ACFDDC60FDA913000C504DE /* PBXTextBookmark */; - 3ACFDDC70FDA913000C504DE = 3ACFDDC70FDA913000C504DE /* PBXTextBookmark */; - 3ACFDDC80FDA913000C504DE = 3ACFDDC80FDA913000C504DE /* PBXTextBookmark */; - 3ACFDDC90FDA915100C504DE = 3ACFDDC90FDA915100C504DE /* PBXTextBookmark */; - 3ACFDDCA0FDA915100C504DE = 3ACFDDCA0FDA915100C504DE /* PBXTextBookmark */; - 3ACFDDCB0FDA915100C504DE = 3ACFDDCB0FDA915100C504DE /* PBXTextBookmark */; - 3ACFDDCC0FDA915E00C504DE = 3ACFDDCC0FDA915E00C504DE /* PBXTextBookmark */; - 3ACFDDCD0FDA915E00C504DE = 3ACFDDCD0FDA915E00C504DE /* PBXTextBookmark */; - 3ACFDDCE0FDA915E00C504DE = 3ACFDDCE0FDA915E00C504DE /* PBXTextBookmark */; - 3ACFDDCF0FDA917D00C504DE = 3ACFDDCF0FDA917D00C504DE /* PBXTextBookmark */; - 3ACFDDD00FDA917D00C504DE = 3ACFDDD00FDA917D00C504DE /* PBXTextBookmark */; - 3ACFDDD10FDA917D00C504DE = 3ACFDDD10FDA917D00C504DE /* PBXTextBookmark */; - 3ACFDDD20FDA91BA00C504DE = 3ACFDDD20FDA91BA00C504DE /* PBXTextBookmark */; - 3ACFDDD30FDA91BA00C504DE = 3ACFDDD30FDA91BA00C504DE /* PBXTextBookmark */; - 3ACFDDD40FDA91BA00C504DE = 3ACFDDD40FDA91BA00C504DE /* PBXTextBookmark */; - 3ACFDDD50FDA91DF00C504DE = 3ACFDDD50FDA91DF00C504DE /* PBXTextBookmark */; - 3ACFDDD60FDA91DF00C504DE = 3ACFDDD60FDA91DF00C504DE /* PBXTextBookmark */; - 3ACFDDD70FDA91DF00C504DE = 3ACFDDD70FDA91DF00C504DE /* PBXTextBookmark */; - 3ACFDDD80FDA91F700C504DE = 3ACFDDD80FDA91F700C504DE /* PBXTextBookmark */; - 3ACFDDD90FDA91F700C504DE = 3ACFDDD90FDA91F700C504DE /* PBXTextBookmark */; - 3ACFDDDA0FDA91F700C504DE = 3ACFDDDA0FDA91F700C504DE /* PBXTextBookmark */; - 3ACFDDDB0FDA920600C504DE = 3ACFDDDB0FDA920600C504DE /* PBXTextBookmark */; - 3ACFDDDC0FDA920600C504DE = 3ACFDDDC0FDA920600C504DE /* PBXTextBookmark */; - 3ACFDDDD0FDA920600C504DE = 3ACFDDDD0FDA920600C504DE /* PBXTextBookmark */; - 3ACFDDDE0FDA926000C504DE = 3ACFDDDE0FDA926000C504DE /* PBXTextBookmark */; - 3ACFDDDF0FDA926000C504DE = 3ACFDDDF0FDA926000C504DE /* PBXTextBookmark */; - 3ACFDDE00FDA926000C504DE = 3ACFDDE00FDA926000C504DE /* PBXTextBookmark */; - 3ACFDDE10FDA926000C504DE = 3ACFDDE10FDA926000C504DE /* PBXTextBookmark */; - 3ACFDDE20FDA926000C504DE = 3ACFDDE20FDA926000C504DE /* PBXTextBookmark */; - 3ACFDDE30FDA927600C504DE = 3ACFDDE30FDA927600C504DE /* PBXTextBookmark */; - 3ACFDDE40FDA927600C504DE = 3ACFDDE40FDA927600C504DE /* PBXTextBookmark */; - 3ACFDDE50FDA927600C504DE = 3ACFDDE50FDA927600C504DE /* PBXTextBookmark */; - 3ACFDDE60FDA929600C504DE = 3ACFDDE60FDA929600C504DE /* PBXTextBookmark */; - 3ACFDDE70FDA929600C504DE = 3ACFDDE70FDA929600C504DE /* PBXTextBookmark */; - 3ACFDDE80FDA929600C504DE = 3ACFDDE80FDA929600C504DE /* PBXTextBookmark */; - 3ACFDDE90FDA92E000C504DE = 3ACFDDE90FDA92E000C504DE /* PBXTextBookmark */; - 3ACFDDEA0FDA92E000C504DE = 3ACFDDEA0FDA92E000C504DE /* PBXTextBookmark */; - 3ACFDDEB0FDA92E000C504DE = 3ACFDDEB0FDA92E000C504DE /* PBXTextBookmark */; - 3ACFDDEC0FDA92EB00C504DE = 3ACFDDEC0FDA92EB00C504DE /* PBXTextBookmark */; - 3ACFDDED0FDA92EB00C504DE = 3ACFDDED0FDA92EB00C504DE /* PBXTextBookmark */; - 3ACFDDEE0FDA92EB00C504DE = 3ACFDDEE0FDA92EB00C504DE /* PBXTextBookmark */; - 3ACFDDEF0FDA941000C504DE = 3ACFDDEF0FDA941000C504DE /* PBXTextBookmark */; - 3ACFDDF00FDA941000C504DE = 3ACFDDF00FDA941000C504DE /* PBXTextBookmark */; - 3ACFDDF10FDA941000C504DE = 3ACFDDF10FDA941000C504DE /* PBXTextBookmark */; - 3ACFDDF40FDA941000C504DE = 3ACFDDF40FDA941000C504DE /* PBXBookmark */; - 3ACFDDF50FDA941000C504DE = 3ACFDDF50FDA941000C504DE /* PBXTextBookmark */; - 3ACFDDF60FDA941000C504DE = 3ACFDDF60FDA941000C504DE /* PBXTextBookmark */; - 3ACFDDF70FDA941000C504DE = 3ACFDDF70FDA941000C504DE /* PBXTextBookmark */; - 3AEAF9100FB2697C00D61E73 = 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */; - 3AEAF9120FB2697C00D61E73 = 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */; - 3AEAF9130FB2697C00D61E73 = 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */; - 3AEAF9A10FB27BB900D61E73 = 3AEAF9A10FB27BB900D61E73 /* PBXTextBookmark */; - 3AEAF9BB0FB27BB900D61E73 = 3AEAF9BB0FB27BB900D61E73 /* PBXTextBookmark */; - 3AEE0D8F0FB3ACB600248D5F = 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */; - 3AEE0D900FB3ACB600248D5F = 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */; - 3AF1CBD90FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBD90FF49FD8002E11EE /* PBXTextBookmark */; - 3AF1CBDA0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDA0FF49FD8002E11EE /* PBXTextBookmark */; - 3AF1CBDB0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDB0FF49FD8002E11EE /* PBXTextBookmark */; - 3AF1CBDC0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDC0FF49FD8002E11EE /* PBXTextBookmark */; + 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */; + 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */ = 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */; + 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */ = 3A232CA00FB21F7F00A5C7C2 /* PBXTextBookmark */; + 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */ = 3A232CA10FB21F7F00A5C7C2 /* PBXTextBookmark */; + 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */ = 3A5D84730FCCA60900465DF2 /* PBXTextBookmark */; + 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */ = 3A5D84E40FCCAA6700465DF2 /* PBXTextBookmark */; + 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */ = 3A62EEFF0FD5FF7900E60F50 /* PBXTextBookmark */; + 3A65A7580FC0D5C2004E4F00 /* PBXTextBookmark */ = 3A65A7580FC0D5C2004E4F00 /* PBXTextBookmark */; + 3A65A75C0FC0D5C2004E4F00 /* PBXTextBookmark */ = 3A65A75C0FC0D5C2004E4F00 /* PBXTextBookmark */; + 3A65A7690FC0D8CA004E4F00 /* PBXTextBookmark */ = 3A65A7690FC0D8CA004E4F00 /* PBXTextBookmark */; + 3A65A77A0FC0FC3F004E4F00 /* PBXTextBookmark */ = 3A65A77A0FC0FC3F004E4F00 /* PBXTextBookmark */; + 3A65A9540FC12C01004E4F00 /* PBXTextBookmark */ = 3A65A9540FC12C01004E4F00 /* PBXTextBookmark */; + 3A65A9550FC12C01004E4F00 /* PBXTextBookmark */ = 3A65A9550FC12C01004E4F00 /* PBXTextBookmark */; + 3A7FCEED0FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEED0FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEEF0FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEEF0FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEF20FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEF20FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEF60FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEF60FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEF80FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEF80FBC046D00EF8097 /* PBXTextBookmark */; + 3A7FCEFD0FBC046D00EF8097 /* PBXTextBookmark */ = 3A7FCEFD0FBC046D00EF8097 /* PBXTextBookmark */; + 3A99A5FA0FB8D5DF00B1F47C /* PBXTextBookmark */ = 3A99A5FA0FB8D5DF00B1F47C /* PBXTextBookmark */; + 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */ = 3A99A6650FB8E3DC00B1F47C /* PBXTextBookmark */; + 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */ = 3A99A6C60FB8E78600B1F47C /* PBXTextBookmark */; + 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */ = 3A99A7400FB8EC6800B1F47C /* PBXTextBookmark */; + 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */ = 3AEAF9100FB2697C00D61E73 /* PBXTextBookmark */; + 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */ = 3AEAF9120FB2697C00D61E73 /* PBXTextBookmark */; + 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */ = 3AEAF9130FB2697C00D61E73 /* PBXTextBookmark */; + 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */ = 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */; + 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */ = 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */; 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */; - 3AF1CBE00FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBE00FF49FD8002E11EE /* PBXTextBookmark */; - 3AF3E4270FDA4B8400D2224F = 3AF3E4270FDA4B8400D2224F /* PBXTextBookmark */; - 3AF3E42A0FDA4B8400D2224F = 3AF3E42A0FDA4B8400D2224F /* PBXTextBookmark */; - 3AF3E42C0FDA4B8400D2224F = 3AF3E42C0FDA4B8400D2224F /* PBXTextBookmark */; + 3AF91D640FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D640FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D650FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D650FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D660FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D660FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D670FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D670FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D680FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D680FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D690FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D690FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6A0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6A0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6B0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6B0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6C0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6C0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D6D0FF70813009F6B4F /* PBXTextBookmark */ = 3AF91D6D0FF70813009F6B4F /* PBXTextBookmark */; + 3AF91D7E0FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D7E0FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D7F0FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D7F0FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D810FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D810FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D820FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D820FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D830FF708B2009F6B4F /* PBXTextBookmark */ = 3AF91D830FF708B2009F6B4F /* PBXTextBookmark */; + 3AF91D880FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D880FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8A0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8A0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8B0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8B0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8C0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8C0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D8E0FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D8E0FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D900FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D900FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D910FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D910FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D920FF70933009F6B4F /* PBXTextBookmark */ = 3AF91D920FF70933009F6B4F /* PBXTextBookmark */; + 3AF91D960FF70AD3009F6B4F /* PBXTextBookmark */ = 3AF91D960FF70AD3009F6B4F /* PBXTextBookmark */; + 3AF91D970FF70AD3009F6B4F /* PBXTextBookmark */ = 3AF91D970FF70AD3009F6B4F /* PBXTextBookmark */; + 3AF91D9A0FF711D9009F6B4F /* PBXTextBookmark */ = 3AF91D9A0FF711D9009F6B4F /* PBXTextBookmark */; + 3AF91D9B0FF711D9009F6B4F /* PBXTextBookmark */ = 3AF91D9B0FF711D9009F6B4F /* PBXTextBookmark */; }; sourceControlManager = 3A232C620FB214E900A5C7C2 /* Source Control */; userBuildSettings = { @@ -446,92 +145,12 @@ }; 08FB7796FE84155DC02AAC07 /* main.c */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {691, 938}}"; - sepNavSelRange = "{0, 0}"; - sepNavVisRange = "{0, 1791}"; + sepNavIntBoundsRect = "{{0, 0}, {1011, 980}}"; + sepNavSelRange = "{61, 0}"; + sepNavVisRange = "{0, 1463}"; sepNavWindowFrame = "{{199, 162}, {1027, 575}}"; }; }; - 3A09E2D00FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; - name = "text.h: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 643; - vrLoc = 0; - }; - 3A09E2D10FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; - name = "text.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 920; - vrLoc = 0; - }; - 3A09E2D20FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; - name = "text.h: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 643; - vrLoc = 0; - }; - 3A09E2D30FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; - name = "text.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 920; - vrLoc = 0; - }; - 3A09E2D40FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B50FB8C45B00B1F47C /* text.h */; - name = "text.h: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 643; - vrLoc = 0; - }; - 3A09E2D50FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; - name = "text.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 920; - vrLoc = 0; - }; - 3A09E2D80FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 439"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1260; - vrLoc = 5612; - }; - 3A09E2D90FED6DF6003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 165"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1209; - vrLoc = 4359; - }; 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; @@ -552,43 +171,6 @@ vrLen = 1446; vrLoc = 0; }; - 3A09E2E30FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A09E2E40FED6EEA003FAB0D /* supervisor.c */; - name = "supervisor.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 846; - vrLoc = 0; - }; - 3A09E2E40FED6EEA003FAB0D /* supervisor.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = supervisor.c; - path = /Volumes/Code/pntool/codegen/src/build/Debug/staging/supervisor.c; - sourceTree = "<absolute>"; - }; - 3A09E2E50FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 165"; - rLen = 19; - rLoc = 4853; - rType = 0; - vrLen = 1381; - vrLoc = 4115; - }; - 3A09E2E60FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A5B60FB8C45B00B1F47C /* text.c */; - name = "text.c: 17"; - rLen = 4; - rLoc = 263; - rType = 0; - vrLen = 920; - vrLoc = 0; - }; 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 3A752B7E0FE6A2B300091C76 /* pns.h */; @@ -599,561 +181,6 @@ vrLen = 1446; vrLoc = 0; }; - 3A09E2E80FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 63"; - rLen = 0; - rLoc = 1970; - rType = 0; - vrLen = 1292; - vrLoc = 2389; - }; - 3A09E2E90FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A09E2EA0FED6EEA003FAB0D /* supervisor.c */; - name = "supervisor.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 846; - vrLoc = 0; - }; - 3A09E2EA0FED6EEA003FAB0D /* supervisor.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = supervisor.c; - path = /Volumes/Code/pntool/codegen/src/build/Debug/staging/supervisor.c; - sourceTree = "<absolute>"; - }; - 3A09E2EB0FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 165"; - rLen = 19; - rLoc = 4853; - rType = 0; - vrLen = 1381; - vrLoc = 4115; - }; - 3A09E2EC0FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A09E2ED0FED6EEA003FAB0D /* supervisor.c */; - name = "supervisor.c: 1"; - rLen = 0; - rLoc = 0; - rType = 0; - vrLen = 846; - vrLoc = 0; - }; - 3A09E2ED0FED6EEA003FAB0D /* supervisor.c */ = { - isa = PBXFileReference; - lastKnownFileType = sourcecode.c.c; - name = supervisor.c; - path = /Volumes/Code/pntool/codegen/src/build/Debug/staging/supervisor.c; - sourceTree = "<absolute>"; - }; - 3A09E2EE0FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 62"; - rLen = 0; - rLoc = 1855; - rType = 0; - vrLen = 1286; - vrLoc = 1328; - }; - 3A09E2EF0FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 439"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1260; - vrLoc = 5612; - }; - 3A09E2F00FED6EEA003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 166"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1209; - vrLoc = 4373; - }; - 3A09E2F40FED6F4E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 62"; - rLen = 0; - rLoc = 1855; - rType = 0; - vrLen = 1286; - vrLoc = 1328; - }; - 3A09E2F50FED6F4E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - rLen = 9; - rLoc = 7448; - rType = 0; - }; - 3A09E2F60FED6F4E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 62"; - rLen = 0; - rLoc = 1855; - rType = 0; - vrLen = 1286; - vrLoc = 1328; - }; - 3A09E2F70FED6F4E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 314"; - rLen = 9; - rLoc = 7448; - rType = 0; - vrLen = 1473; - vrLoc = 6788; - }; - 3A09E2F80FED6F4E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 439"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1208; - vrLoc = 5612; - }; - 3A09E2F90FED6F4E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 166"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1137; - vrLoc = 4373; - }; - 3A09E3020FED6F9E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 314"; - rLen = 0; - rLoc = 7426; - rType = 0; - vrLen = 1229; - vrLoc = 6397; - }; - 3A09E3030FED6F9E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 440"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1260; - vrLoc = 5612; - }; - 3A09E3040FED6F9E003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 166"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1209; - vrLoc = 4373; - }; - 3A09E3060FED6FBC003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 315"; - rLen = 0; - rLoc = 7517; - rType = 0; - vrLen = 1214; - vrLoc = 6397; - }; - 3A09E3070FED6FBC003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 440"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1208; - vrLoc = 5612; - }; - 3A09E3080FED6FBC003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 166"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1137; - vrLoc = 4373; - }; - 3A09E30A0FED6FCC003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 290"; - rLen = 7; - rLoc = 6757; - rType = 0; - vrLen = 1248; - vrLoc = 6397; - }; - 3A09E30B0FED6FCC003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 440"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1260; - vrLoc = 5612; - }; - 3A09E30C0FED6FCC003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 166"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1209; - vrLoc = 4373; - }; - 3A09E30D0FED6FEB003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 315"; - rLen = 0; - rLoc = 7474; - rType = 0; - vrLen = 1445; - vrLoc = 6894; - }; - 3A09E30E0FED6FEB003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 440"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1282; - vrLoc = 5612; - }; - 3A09E30F0FED6FEB003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; - name = "supervisorCompler.c: 166"; - rLen = 0; - rLoc = 4872; - rType = 0; - vrLen = 1209; - vrLoc = 4373; - }; - 3A09E3110FED704A003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 315"; - rLen = 0; - rLoc = 7426; - rType = 0; - vrLen = 1338; - vrLoc = 6591; - }; - 3A09E3120FED704A003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; - name = "supervisor_static_include.h: 441"; - rLen = 0; - rLoc = 10859; - rType = 0; - vrLen = 1282; - vrLoc = 5612; - }; - 3A09E3130FED704A003FAB0D /* PBXTextBookmark */ = { - isa = PBXTextBookmark; - fRef = 3AEAF9050FB2696400D61E73 /* supe... [truncated message content] |
From: <com...@us...> - 2009-06-28 06:04:02
|
Revision: 112 http://pntool.svn.sourceforge.net/pntool/?rev=112&view=rev Author: compaqdrew Date: 2009-06-28 06:04:00 +0000 (Sun, 28 Jun 2009) Log Message: ----------- Removing debug code Modified Paths: -------------- codegen/src/codegen.xcodeproj/drew.mode1v3 codegen/src/codegen.xcodeproj/drew.pbxuser codegen/src/supervisor_static_include.h Modified: codegen/src/codegen.xcodeproj/drew.mode1v3 =================================================================== --- codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-27 16:10:17 UTC (rev 111) +++ codegen/src/codegen.xcodeproj/drew.mode1v3 2009-06-28 06:04:00 UTC (rev 112) @@ -216,10 +216,10 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A09E32E0FED7148003FAB0D</string> + <string>3AF1CBDF0FF49FD8002E11EE</string> <key>history</key> <array> - <string>3AA340FA0FE9EC1D004E156E</string> + <string>3A09E3320FEDAA69003FAB0D</string> </array> </dict> <key>SplitCount</key> @@ -235,7 +235,7 @@ <key>PBXModuleWindowStatusBarHidden2</key> <false/> <key>RubberWindowFrame</key> - <string>130 147 1027 855 0 0 1280 1002 </string> + <string>336 173 1027 855 0 0 1680 1028 </string> </dict> </dict> <dict> @@ -256,10 +256,10 @@ <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A09E32F0FED7148003FAB0D</string> + <string>3AF1CBE00FF49FD8002E11EE</string> <key>history</key> <array> - <string>3AA340FB0FE9EC1D004E156E</string> + <string>3A09E3330FEDAA69003FAB0D</string> </array> </dict> <key>SplitCount</key> @@ -275,7 +275,7 @@ <key>PBXModuleWindowStatusBarHidden2</key> <false/> <key>RubberWindowFrame</key> - <string>119 219 981 583 0 0 1280 1002 </string> + <string>278 231 981 583 0 0 1680 1028 </string> </dict> </dict> </array> @@ -314,6 +314,8 @@ <key>Layout</key> <array> <dict> + <key>BecomeActive</key> + <true/> <key>ContentConfiguration</key> <dict> <key>PBXBottomSmartGroupGIDs</key> @@ -360,8 +362,8 @@ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key> <array> <array> - <integer>13</integer> - <integer>11</integer> + <integer>9</integer> + <integer>4</integer> <integer>3</integer> <integer>0</integer> </array> @@ -386,7 +388,7 @@ <real>186</real> </array> <key>RubberWindowFrame</key> - <string>0 146 1280 856 0 0 1280 1002 </string> + <string>400 172 1280 856 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXSmartGroupTreeModule</string> @@ -397,14 +399,12 @@ <key>Dock</key> <array> <dict> - <key>BecomeActive</key> - <true/> <key>ContentConfiguration</key> <dict> <key>PBXProjectModuleGUID</key> <string>1CE0B20306471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>supervisor_static_include.h</string> + <string>pns.c</string> <key>PBXSplitModuleInNavigatorKey</key> <dict> <key>Split0</key> @@ -412,11 +412,11 @@ <key>PBXProjectModuleGUID</key> <string>1CE0B20406471E060097A5F4</string> <key>PBXProjectModuleLabel</key> - <string>supervisor_static_include.h</string> + <string>pns.c</string> <key>_historyCapacity</key> <integer>0</integer> <key>bookmark</key> - <string>3A09E32D0FED7148003FAB0D</string> + <string>3AF1CBDC0FF49FD8002E11EE</string> <key>history</key> <array> <string>3A7FCEED0FBC046D00EF8097</string> @@ -439,7 +439,8 @@ <string>3A09E2E20FED6EEA003FAB0D</string> <string>3A09E2E30FED6EEA003FAB0D</string> <string>3A09E2F40FED6F4E003FAB0D</string> - <string>3A09E2F50FED6F4E003FAB0D</string> + <string>3AF1CBD90FF49FD8002E11EE</string> + <string>3AF1CBDA0FF49FD8002E11EE</string> </array> <key>prevStack</key> <array> @@ -462,16 +463,9 @@ <string>3A65A75C0FC0D5C2004E4F00</string> <string>3A65A7690FC0D8CA004E4F00</string> <string>3A65A77A0FC0FC3F004E4F00</string> - <string>3A09E2D20FED6DF6003FAB0D</string> - <string>3A09E2D30FED6DF6003FAB0D</string> - <string>3A09E2D40FED6DF6003FAB0D</string> - <string>3A09E2E60FED6EEA003FAB0D</string> <string>3A09E2E70FED6EEA003FAB0D</string> - <string>3A09E2E80FED6EEA003FAB0D</string> <string>3A09E2E90FED6EEA003FAB0D</string> - <string>3A09E2EB0FED6EEA003FAB0D</string> - <string>3A09E2EC0FED6EEA003FAB0D</string> - <string>3A09E2F60FED6F4E003FAB0D</string> + <string>3AF1CBDB0FF49FD8002E11EE</string> </array> </dict> <key>SplitCount</key> @@ -485,7 +479,7 @@ <key>Frame</key> <string>{{0, 0}, {1072, 658}}</string> <key>RubberWindowFrame</key> - <string>0 146 1280 856 0 0 1280 1002 </string> + <string>400 172 1280 856 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXNavigatorGroup</string> @@ -505,7 +499,7 @@ <key>Frame</key> <string>{{0, 663}, {1072, 152}}</string> <key>RubberWindowFrame</key> - <string>0 146 1280 856 0 0 1280 1002 </string> + <string>400 172 1280 856 0 0 1680 1028 </string> </dict> <key>Module</key> <string>XCDetailModule</string> @@ -529,9 +523,9 @@ </array> <key>TableOfContents</key> <array> - <string>3A09E2D60FED6DF6003FAB0D</string> + <string>3AF1CBDD0FF49FD8002E11EE</string> <string>1CE0B1FE06471DED0097A5F4</string> - <string>3A09E2D70FED6DF6003FAB0D</string> + <string>3AF1CBDE0FF49FD8002E11EE</string> <string>1CE0B20306471E060097A5F4</string> <string>1CE0B20506471E060097A5F4</string> </array> @@ -665,18 +659,13 @@ <integer>5</integer> <key>WindowOrderList</key> <array> - <string>3A09E2FE0FED6F4E003FAB0D</string> - <string>3A09E2FF0FED6F4E003FAB0D</string> - <string>1C78EAAD065D492600B07095</string> - <string>1C530D57069F1CE1000CFCEE</string> - <string>3A232CB10FB21F7F00A5C7C2</string> <string>1CD10A99069EF8BA00B06720</string> <string>3A13FC520FDA612F0051F833</string> <string>3ACFDCB10FDA81C200C504DE</string> - <string>/Volumes/Code/pntool/codegen/src/codegen.xcodeproj</string> + <string>/Volumes/y/drew/Dropbox/Code/pntool/codegen/src/codegen.xcodeproj</string> </array> <key>WindowString</key> - <string>0 146 1280 856 0 0 1280 1002 </string> + <string>400 172 1280 856 0 0 1680 1028 </string> <key>WindowToolsV3</key> <array> <dict> @@ -847,10 +836,10 @@ <key>Frame</key> <string>{{456, 0}, {544, 297}}</string> <key>RubberWindowFrame</key> - <string>173 384 1000 597 0 0 1280 1002 </string> + <string>420 408 1000 597 0 0 1680 1028 </string> </dict> <key>RubberWindowFrame</key> - <string>173 384 1000 597 0 0 1280 1002 </string> + <string>420 408 1000 597 0 0 1680 1028 </string> </dict> <key>Module</key> <string>PBXDebugSessionModule</string> @@ -873,18 +862,18 @@ <key>TableOfContents</key> <array> <string>1CD10A99069EF8BA00B06720</string> - <string>3A09E2DB0FED6DF6003FAB0D</string> + <string>3AF1CBE10FF49FD8002E11EE</string> <string>1C162984064C10D400B95A72</string> - <string>3A09E2DC0FED6DF6003FAB0D</string> - <string>3A09E2DD0FED6DF6003FAB0D</string> - <string>3A09E2DE0FED6DF6003FAB0D</string> - <string>3A09E2DF0FED6DF6003FAB0D</string> - <string>3A09E2E00FED6DF6003FAB0D</string> + <string>3AF1CBE20FF49FD8002E11EE</string> + <string>3AF1CBE30FF49FD8002E11EE</string> + <string>3AF1CBE40FF49FD8002E11EE</string> + <string>3AF1CBE50FF49FD8002E11EE</string> + <string>3AF1CBE60FF49FD8002E11EE</string> </array> <key>ToolbarConfiguration</key> <string>xcode.toolbar.config.debugV3</string> <key>WindowString</key> - <string>173 384 1000 597 0 0 1280 1002 </string> + <string>420 408 1000 597 0 0 1680 1028 </string> <key>WindowToolGUID</key> <string>1CD10A99069EF8BA00B06720</string> <key>WindowToolIsVisible</key> Modified: codegen/src/codegen.xcodeproj/drew.pbxuser =================================================================== --- codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-27 16:10:17 UTC (rev 111) +++ codegen/src/codegen.xcodeproj/drew.pbxuser 2009-06-28 06:04:00 UTC (rev 112) @@ -76,75 +76,79 @@ PBXFileDataSource_Warnings_ColumnID, ); }; - PBXPerProjectTemplateStateSaveDate = 267218397; - PBXWorkspaceStateSaveDate = 267218397; + PBXPerProjectTemplateStateSaveDate = 267689938; + PBXWorkspaceStateSaveDate = 267689938; }; perUserProjectItems = { - 3A09E2D00FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D00FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D10FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D10FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D20FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D20FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D30FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D30FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D40FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D40FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D50FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D50FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D80FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D80FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2D90FED6DF6003FAB0D /* PBXTextBookmark */ = 3A09E2D90FED6DF6003FAB0D /* PBXTextBookmark */; - 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E30FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E30FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E50FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E50FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E60FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E60FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E80FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E80FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2E90FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2E90FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EB0FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2EB0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EC0FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2EC0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EE0FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2EE0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2EF0FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2EF0FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2F00FED6EEA003FAB0D /* PBXTextBookmark */ = 3A09E2F00FED6EEA003FAB0D /* PBXTextBookmark */; - 3A09E2F40FED6F4E003FAB0D /* PBXTextBookmark */ = 3A09E2F40FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F50FED6F4E003FAB0D /* PBXTextBookmark */ = 3A09E2F50FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F60FED6F4E003FAB0D /* PBXTextBookmark */ = 3A09E2F60FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F70FED6F4E003FAB0D /* PBXTextBookmark */ = 3A09E2F70FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F80FED6F4E003FAB0D /* PBXTextBookmark */ = 3A09E2F80FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E2F90FED6F4E003FAB0D /* PBXTextBookmark */ = 3A09E2F90FED6F4E003FAB0D /* PBXTextBookmark */; - 3A09E3020FED6F9E003FAB0D /* PBXTextBookmark */ = 3A09E3020FED6F9E003FAB0D /* PBXTextBookmark */; - 3A09E3030FED6F9E003FAB0D /* PBXTextBookmark */ = 3A09E3030FED6F9E003FAB0D /* PBXTextBookmark */; - 3A09E3040FED6F9E003FAB0D /* PBXTextBookmark */ = 3A09E3040FED6F9E003FAB0D /* PBXTextBookmark */; - 3A09E3060FED6FBC003FAB0D /* PBXTextBookmark */ = 3A09E3060FED6FBC003FAB0D /* PBXTextBookmark */; - 3A09E3070FED6FBC003FAB0D /* PBXTextBookmark */ = 3A09E3070FED6FBC003FAB0D /* PBXTextBookmark */; - 3A09E3080FED6FBC003FAB0D /* PBXTextBookmark */ = 3A09E3080FED6FBC003FAB0D /* PBXTextBookmark */; - 3A09E30A0FED6FCC003FAB0D /* PBXTextBookmark */ = 3A09E30A0FED6FCC003FAB0D /* PBXTextBookmark */; - 3A09E30B0FED6FCC003FAB0D /* PBXTextBookmark */ = 3A09E30B0FED6FCC003FAB0D /* PBXTextBookmark */; - 3A09E30C0FED6FCC003FAB0D /* PBXTextBookmark */ = 3A09E30C0FED6FCC003FAB0D /* PBXTextBookmark */; - 3A09E30D0FED6FEB003FAB0D /* PBXTextBookmark */ = 3A09E30D0FED6FEB003FAB0D /* PBXTextBookmark */; - 3A09E30E0FED6FEB003FAB0D /* PBXTextBookmark */ = 3A09E30E0FED6FEB003FAB0D /* PBXTextBookmark */; - 3A09E30F0FED6FEB003FAB0D /* PBXTextBookmark */ = 3A09E30F0FED6FEB003FAB0D /* PBXTextBookmark */; - 3A09E3110FED704A003FAB0D /* PBXTextBookmark */ = 3A09E3110FED704A003FAB0D /* PBXTextBookmark */; - 3A09E3120FED704A003FAB0D /* PBXTextBookmark */ = 3A09E3120FED704A003FAB0D /* PBXTextBookmark */; - 3A09E3130FED704A003FAB0D /* PBXTextBookmark */ = 3A09E3130FED704A003FAB0D /* PBXTextBookmark */; - 3A09E3160FED706F003FAB0D /* PBXTextBookmark */ = 3A09E3160FED706F003FAB0D /* PBXTextBookmark */; - 3A09E3170FED706F003FAB0D /* PBXTextBookmark */ = 3A09E3170FED706F003FAB0D /* PBXTextBookmark */; - 3A09E3180FED706F003FAB0D /* PBXTextBookmark */ = 3A09E3180FED706F003FAB0D /* PBXTextBookmark */; - 3A09E31B0FED708C003FAB0D /* PBXTextBookmark */ = 3A09E31B0FED708C003FAB0D /* PBXTextBookmark */; - 3A09E31C0FED708C003FAB0D /* PBXTextBookmark */ = 3A09E31C0FED708C003FAB0D /* PBXTextBookmark */; - 3A09E31E0FED70AD003FAB0D /* PBXTextBookmark */ = 3A09E31E0FED70AD003FAB0D /* PBXTextBookmark */; - 3A09E31F0FED70AD003FAB0D /* PBXTextBookmark */ = 3A09E31F0FED70AD003FAB0D /* PBXTextBookmark */; - 3A09E3200FED70AD003FAB0D /* PBXTextBookmark */ = 3A09E3200FED70AD003FAB0D /* PBXTextBookmark */; - 3A09E3210FED70E5003FAB0D /* PBXTextBookmark */ = 3A09E3210FED70E5003FAB0D /* PBXTextBookmark */; - 3A09E3220FED70E5003FAB0D /* PBXTextBookmark */ = 3A09E3220FED70E5003FAB0D /* PBXTextBookmark */; - 3A09E3230FED70E5003FAB0D /* PBXTextBookmark */ = 3A09E3230FED70E5003FAB0D /* PBXTextBookmark */; - 3A09E3240FED70FD003FAB0D /* PBXTextBookmark */ = 3A09E3240FED70FD003FAB0D /* PBXTextBookmark */; - 3A09E3250FED70FD003FAB0D /* PBXTextBookmark */ = 3A09E3250FED70FD003FAB0D /* PBXTextBookmark */; - 3A09E3260FED70FD003FAB0D /* PBXTextBookmark */ = 3A09E3260FED70FD003FAB0D /* PBXTextBookmark */; - 3A09E3270FED7121003FAB0D /* PBXTextBookmark */ = 3A09E3270FED7121003FAB0D /* PBXTextBookmark */; - 3A09E3280FED7121003FAB0D /* PBXTextBookmark */ = 3A09E3280FED7121003FAB0D /* PBXTextBookmark */; - 3A09E3290FED7121003FAB0D /* PBXTextBookmark */ = 3A09E3290FED7121003FAB0D /* PBXTextBookmark */; - 3A09E32A0FED7130003FAB0D /* PBXTextBookmark */ = 3A09E32A0FED7130003FAB0D /* PBXTextBookmark */; - 3A09E32B0FED7130003FAB0D /* PBXTextBookmark */ = 3A09E32B0FED7130003FAB0D /* PBXTextBookmark */; - 3A09E32C0FED7130003FAB0D /* PBXTextBookmark */ = 3A09E32C0FED7130003FAB0D /* PBXTextBookmark */; - 3A09E32D0FED7148003FAB0D /* PBXTextBookmark */ = 3A09E32D0FED7148003FAB0D /* PBXTextBookmark */; - 3A09E32E0FED7148003FAB0D /* PBXTextBookmark */ = 3A09E32E0FED7148003FAB0D /* PBXTextBookmark */; - 3A09E32F0FED7148003FAB0D /* PBXTextBookmark */ = 3A09E32F0FED7148003FAB0D /* PBXTextBookmark */; + 3A09E2D00FED6DF6003FAB0D = 3A09E2D00FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D10FED6DF6003FAB0D = 3A09E2D10FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D20FED6DF6003FAB0D = 3A09E2D20FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D30FED6DF6003FAB0D = 3A09E2D30FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D40FED6DF6003FAB0D = 3A09E2D40FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D50FED6DF6003FAB0D = 3A09E2D50FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D80FED6DF6003FAB0D = 3A09E2D80FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2D90FED6DF6003FAB0D = 3A09E2D90FED6DF6003FAB0D /* PBXTextBookmark */; + 3A09E2E10FED6EEA003FAB0D = 3A09E2E10FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E20FED6EEA003FAB0D = 3A09E2E20FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E30FED6EEA003FAB0D = 3A09E2E30FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E50FED6EEA003FAB0D = 3A09E2E50FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E60FED6EEA003FAB0D = 3A09E2E60FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E70FED6EEA003FAB0D = 3A09E2E70FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E80FED6EEA003FAB0D = 3A09E2E80FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2E90FED6EEA003FAB0D = 3A09E2E90FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2EB0FED6EEA003FAB0D = 3A09E2EB0FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2EC0FED6EEA003FAB0D = 3A09E2EC0FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2EE0FED6EEA003FAB0D = 3A09E2EE0FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2EF0FED6EEA003FAB0D = 3A09E2EF0FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2F00FED6EEA003FAB0D = 3A09E2F00FED6EEA003FAB0D /* PBXTextBookmark */; + 3A09E2F40FED6F4E003FAB0D = 3A09E2F40FED6F4E003FAB0D /* PBXTextBookmark */; + 3A09E2F50FED6F4E003FAB0D = 3A09E2F50FED6F4E003FAB0D /* PBXTextBookmark */; + 3A09E2F60FED6F4E003FAB0D = 3A09E2F60FED6F4E003FAB0D /* PBXTextBookmark */; + 3A09E2F70FED6F4E003FAB0D = 3A09E2F70FED6F4E003FAB0D /* PBXTextBookmark */; + 3A09E2F80FED6F4E003FAB0D = 3A09E2F80FED6F4E003FAB0D /* PBXTextBookmark */; + 3A09E2F90FED6F4E003FAB0D = 3A09E2F90FED6F4E003FAB0D /* PBXTextBookmark */; + 3A09E3020FED6F9E003FAB0D = 3A09E3020FED6F9E003FAB0D /* PBXTextBookmark */; + 3A09E3030FED6F9E003FAB0D = 3A09E3030FED6F9E003FAB0D /* PBXTextBookmark */; + 3A09E3040FED6F9E003FAB0D = 3A09E3040FED6F9E003FAB0D /* PBXTextBookmark */; + 3A09E3060FED6FBC003FAB0D = 3A09E3060FED6FBC003FAB0D /* PBXTextBookmark */; + 3A09E3070FED6FBC003FAB0D = 3A09E3070FED6FBC003FAB0D /* PBXTextBookmark */; + 3A09E3080FED6FBC003FAB0D = 3A09E3080FED6FBC003FAB0D /* PBXTextBookmark */; + 3A09E30A0FED6FCC003FAB0D = 3A09E30A0FED6FCC003FAB0D /* PBXTextBookmark */; + 3A09E30B0FED6FCC003FAB0D = 3A09E30B0FED6FCC003FAB0D /* PBXTextBookmark */; + 3A09E30C0FED6FCC003FAB0D = 3A09E30C0FED6FCC003FAB0D /* PBXTextBookmark */; + 3A09E30D0FED6FEB003FAB0D = 3A09E30D0FED6FEB003FAB0D /* PBXTextBookmark */; + 3A09E30E0FED6FEB003FAB0D = 3A09E30E0FED6FEB003FAB0D /* PBXTextBookmark */; + 3A09E30F0FED6FEB003FAB0D = 3A09E30F0FED6FEB003FAB0D /* PBXTextBookmark */; + 3A09E3110FED704A003FAB0D = 3A09E3110FED704A003FAB0D /* PBXTextBookmark */; + 3A09E3120FED704A003FAB0D = 3A09E3120FED704A003FAB0D /* PBXTextBookmark */; + 3A09E3130FED704A003FAB0D = 3A09E3130FED704A003FAB0D /* PBXTextBookmark */; + 3A09E3160FED706F003FAB0D = 3A09E3160FED706F003FAB0D /* PBXTextBookmark */; + 3A09E3170FED706F003FAB0D = 3A09E3170FED706F003FAB0D /* PBXTextBookmark */; + 3A09E3180FED706F003FAB0D = 3A09E3180FED706F003FAB0D /* PBXTextBookmark */; + 3A09E31B0FED708C003FAB0D = 3A09E31B0FED708C003FAB0D /* PBXTextBookmark */; + 3A09E31C0FED708C003FAB0D = 3A09E31C0FED708C003FAB0D /* PBXTextBookmark */; + 3A09E31E0FED70AD003FAB0D = 3A09E31E0FED70AD003FAB0D /* PBXTextBookmark */; + 3A09E31F0FED70AD003FAB0D = 3A09E31F0FED70AD003FAB0D /* PBXTextBookmark */; + 3A09E3200FED70AD003FAB0D = 3A09E3200FED70AD003FAB0D /* PBXTextBookmark */; + 3A09E3210FED70E5003FAB0D = 3A09E3210FED70E5003FAB0D /* PBXTextBookmark */; + 3A09E3220FED70E5003FAB0D = 3A09E3220FED70E5003FAB0D /* PBXTextBookmark */; + 3A09E3230FED70E5003FAB0D = 3A09E3230FED70E5003FAB0D /* PBXTextBookmark */; + 3A09E3240FED70FD003FAB0D = 3A09E3240FED70FD003FAB0D /* PBXTextBookmark */; + 3A09E3250FED70FD003FAB0D = 3A09E3250FED70FD003FAB0D /* PBXTextBookmark */; + 3A09E3260FED70FD003FAB0D = 3A09E3260FED70FD003FAB0D /* PBXTextBookmark */; + 3A09E3270FED7121003FAB0D = 3A09E3270FED7121003FAB0D /* PBXTextBookmark */; + 3A09E3280FED7121003FAB0D = 3A09E3280FED7121003FAB0D /* PBXTextBookmark */; + 3A09E3290FED7121003FAB0D = 3A09E3290FED7121003FAB0D /* PBXTextBookmark */; + 3A09E32A0FED7130003FAB0D = 3A09E32A0FED7130003FAB0D /* PBXTextBookmark */; + 3A09E32B0FED7130003FAB0D = 3A09E32B0FED7130003FAB0D /* PBXTextBookmark */; + 3A09E32C0FED7130003FAB0D = 3A09E32C0FED7130003FAB0D /* PBXTextBookmark */; + 3A09E32D0FED7148003FAB0D = 3A09E32D0FED7148003FAB0D /* PBXTextBookmark */; + 3A09E32E0FED7148003FAB0D = 3A09E32E0FED7148003FAB0D /* PBXTextBookmark */; + 3A09E32F0FED7148003FAB0D = 3A09E32F0FED7148003FAB0D /* PBXTextBookmark */; + 3A09E3300FEDAA69003FAB0D = 3A09E3300FEDAA69003FAB0D /* PBXTextBookmark */; + 3A09E3310FEDAA69003FAB0D = 3A09E3310FEDAA69003FAB0D /* PBXTextBookmark */; + 3A09E3320FEDAA69003FAB0D = 3A09E3320FEDAA69003FAB0D /* PBXTextBookmark */; + 3A09E3330FEDAA69003FAB0D = 3A09E3330FEDAA69003FAB0D /* PBXTextBookmark */; 3A232C980FB21F7F00A5C7C2 = 3A232C980FB21F7F00A5C7C2 /* PBXTextBookmark */; 3A232C9A0FB21F7F00A5C7C2 = 3A232C9A0FB21F7F00A5C7C2 /* PBXTextBookmark */; 3A232C9B0FB21F7F00A5C7C2 = 3A232C9B0FB21F7F00A5C7C2 /* PBXTextBookmark */; @@ -426,6 +430,12 @@ 3AEAF9BB0FB27BB900D61E73 = 3AEAF9BB0FB27BB900D61E73 /* PBXTextBookmark */; 3AEE0D8F0FB3ACB600248D5F = 3AEE0D8F0FB3ACB600248D5F /* PBXTextBookmark */; 3AEE0D900FB3ACB600248D5F = 3AEE0D900FB3ACB600248D5F /* PBXTextBookmark */; + 3AF1CBD90FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBD90FF49FD8002E11EE /* PBXTextBookmark */; + 3AF1CBDA0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDA0FF49FD8002E11EE /* PBXTextBookmark */; + 3AF1CBDB0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDB0FF49FD8002E11EE /* PBXTextBookmark */; + 3AF1CBDC0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDC0FF49FD8002E11EE /* PBXTextBookmark */; + 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */; + 3AF1CBE00FF49FD8002E11EE /* PBXTextBookmark */ = 3AF1CBE00FF49FD8002E11EE /* PBXTextBookmark */; 3AF3E4270FDA4B8400D2224F = 3AF3E4270FDA4B8400D2224F /* PBXTextBookmark */; 3AF3E42A0FDA4B8400D2224F = 3AF3E42A0FDA4B8400D2224F /* PBXTextBookmark */; 3AF3E42C0FDA4B8400D2224F = 3AF3E42C0FDA4B8400D2224F /* PBXTextBookmark */; @@ -507,7 +517,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1260; vrLoc = 5612; @@ -554,6 +564,7 @@ }; 3A09E2E40FED6EEA003FAB0D /* supervisor.c */ = { isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; name = supervisor.c; path = /Volumes/Code/pntool/codegen/src/build/Debug/staging/supervisor.c; sourceTree = "<absolute>"; @@ -610,6 +621,7 @@ }; 3A09E2EA0FED6EEA003FAB0D /* supervisor.c */ = { isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; name = supervisor.c; path = /Volumes/Code/pntool/codegen/src/build/Debug/staging/supervisor.c; sourceTree = "<absolute>"; @@ -636,6 +648,7 @@ }; 3A09E2ED0FED6EEA003FAB0D /* supervisor.c */ = { isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; name = supervisor.c; path = /Volumes/Code/pntool/codegen/src/build/Debug/staging/supervisor.c; sourceTree = "<absolute>"; @@ -655,7 +668,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1260; vrLoc = 5612; @@ -712,7 +725,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1208; vrLoc = 5612; @@ -742,7 +755,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1260; vrLoc = 5612; @@ -772,7 +785,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1208; vrLoc = 5612; @@ -802,7 +815,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1260; vrLoc = 5612; @@ -832,7 +845,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -862,7 +875,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -892,7 +905,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -911,7 +924,7 @@ isa = PBXTextBookmark; fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; rLen = 8; - rLoc = 12634; + rLoc = 12611; rType = 0; }; 3A09E31C0FED708C003FAB0D /* PBXTextBookmark */ = { @@ -919,7 +932,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 499"; rLen = 0; - rLoc = 12626; + rLoc = 12603; rType = 0; vrLen = 579; vrLoc = 12331; @@ -939,7 +952,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -969,7 +982,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -999,7 +1012,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -1029,7 +1042,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -1059,7 +1072,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -1079,7 +1092,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 317"; rLen = 0; - rLoc = 7548; + rLoc = 7526; rType = 0; vrLen = 1248; vrLoc = 6569; @@ -1089,7 +1102,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 441"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1282; vrLoc = 5612; @@ -1104,6 +1117,43 @@ vrLen = 1209; vrLoc = 4373; }; + 3A09E3300FEDAA69003FAB0D /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + rLen = 1; + rLoc = 38; + rType = 1; + }; + 3A09E3310FEDAA69003FAB0D /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 21"; + rLen = 0; + rLoc = 583; + rType = 0; + vrLen = 1110; + vrLoc = 546; + }; + 3A09E3320FEDAA69003FAB0D /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 440"; + rLen = 0; + rLoc = 10859; + rType = 0; + vrLen = 1282; + vrLoc = 5612; + }; + 3A09E3330FEDAA69003FAB0D /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; + name = "supervisorCompler.c: 166"; + rLen = 0; + rLoc = 4872; + rType = 0; + vrLen = 1209; + vrLoc = 4373; + }; 3A13FC180FDA5F3C0051F833 /* supervisorCompler.c:176 */ = { isa = PBXFileBreakpoint; actions = ( @@ -1707,6 +1757,13 @@ vrLen = 1379; vrLoc = 6066; }; + 3A752B7D0FE6A2B300091C76 /* pns.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1011, 14882}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1093}"; + }; + }; 3A752B7E0FE6A2B300091C76 /* pns.h */ = { uiCtxt = { sepNavIntBoundsRect = "{{0, 0}, {691, 4704}}"; @@ -1719,7 +1776,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 384"; rLen = 0; - rLoc = 9195; + rLoc = 9172; rType = 0; vrLen = 1708; vrLoc = 10066; @@ -1749,7 +1806,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 384"; rLen = 0; - rLoc = 9195; + rLoc = 9172; rType = 0; vrLen = 1708; vrLoc = 10066; @@ -1789,7 +1846,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1332; vrLoc = 5679; @@ -1994,8 +2051,8 @@ }; 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {968, 8554}}"; - sepNavSelRange = "{10882, 0}"; + sepNavIntBoundsRect = "{{0, 0}, {1332, 8176}}"; + sepNavSelRange = "{10859, 0}"; sepNavVisRange = "{5612, 1282}"; sepNavWindowFrame = "{{422, -52}, {1027, 1024}}"; }; @@ -2005,7 +2062,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 15"; rLen = 0; - rLoc = 13312; + rLoc = 13289; rType = 0; vrLen = 292; vrLoc = 0; @@ -2072,7 +2129,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1262; vrLoc = 5610; @@ -2130,7 +2187,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 571"; rLen = 0; - rLoc = 14874; + rLoc = 14851; rType = 0; vrLen = 1014; vrLoc = 2468; @@ -2224,7 +2281,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 576"; rLen = 0; - rLoc = 14874; + rLoc = 14851; rType = 0; vrLen = 1467; vrLoc = 2800; @@ -2294,7 +2351,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 576"; rLen = 0; - rLoc = 14874; + rLoc = 14851; rType = 0; vrLen = 1372; vrLoc = 2895; @@ -2314,7 +2371,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 449"; rLen = 0; - rLoc = 11806; + rLoc = 11783; rType = 0; vrLen = 1741; vrLoc = 10191; @@ -2344,7 +2401,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 397"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 1995; vrLoc = 8614; @@ -2374,7 +2431,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 399"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2022; vrLoc = 8633; @@ -2404,7 +2461,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 399"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2022; vrLoc = 8633; @@ -2434,7 +2491,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 399"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2030; vrLoc = 8633; @@ -2464,7 +2521,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 406"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2079; vrLoc = 8633; @@ -2494,7 +2551,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 397"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2079; vrLoc = 8633; @@ -2524,7 +2581,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 399"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2074; vrLoc = 8633; @@ -2554,7 +2611,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 397"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 1901; vrLoc = 8568; @@ -2584,7 +2641,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 10286; + rLoc = 10263; rType = 0; vrLen = 1906; vrLoc = 8568; @@ -2614,7 +2671,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 10286; + rLoc = 10263; rType = 0; vrLen = 1906; vrLoc = 8568; @@ -2644,7 +2701,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 10210; + rLoc = 10187; rType = 0; vrLen = 1884; vrLoc = 8568; @@ -2674,7 +2731,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 10168; + rLoc = 10145; rType = 0; vrLen = 1892; vrLoc = 8568; @@ -2704,7 +2761,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 411"; rLen = 0; - rLoc = 10003; + rLoc = 9980; rType = 0; vrLen = 1894; vrLoc = 8568; @@ -2734,7 +2791,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 10248; + rLoc = 10225; rType = 0; vrLen = 1943; vrLoc = 8568; @@ -2764,7 +2821,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 408"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2070; vrLoc = 8483; @@ -2794,7 +2851,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 408"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2078; vrLoc = 8483; @@ -2824,7 +2881,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 406"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2163; vrLoc = 8486; @@ -2854,7 +2911,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 406"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2163; vrLoc = 8486; @@ -2884,7 +2941,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 406"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2170; vrLoc = 8486; @@ -2914,7 +2971,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 413"; rLen = 0; - rLoc = 9945; + rLoc = 9922; rType = 0; vrLen = 2174; vrLoc = 8486; @@ -2944,7 +3001,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 423"; rLen = 0; - rLoc = 10461; + rLoc = 10438; rType = 0; vrLen = 2191; vrLoc = 8783; @@ -2974,7 +3031,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 423"; rLen = 0; - rLoc = 10378; + rLoc = 10355; rType = 0; vrLen = 2422; vrLoc = 9153; @@ -3004,7 +3061,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 470"; rLen = 0; - rLoc = 12235; + rLoc = 12212; rType = 0; vrLen = 1435; vrLoc = 11317; @@ -3034,7 +3091,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 462"; rLen = 0; - rLoc = 11909; + rLoc = 11886; rType = 0; vrLen = 1800; vrLoc = 10864; @@ -3064,7 +3121,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 459"; rLen = 0; - rLoc = 11806; + rLoc = 11783; rType = 0; vrLen = 1798; vrLoc = 10864; @@ -3094,7 +3151,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 463"; rLen = 0; - rLoc = 11912; + rLoc = 11889; rType = 0; vrLen = 1801; vrLoc = 10864; @@ -3124,7 +3181,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 463"; rLen = 0; - rLoc = 11912; + rLoc = 11889; rType = 0; vrLen = 1801; vrLoc = 10864; @@ -3154,7 +3211,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 384"; rLen = 0; - rLoc = 9238; + rLoc = 9215; rType = 0; vrLen = 1681; vrLoc = 8367; @@ -3184,7 +3241,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 393"; rLen = 0; - rLoc = 9335; + rLoc = 9312; rType = 0; vrLen = 1670; vrLoc = 8387; @@ -3214,7 +3271,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 444"; rLen = 0; - rLoc = 11350; + rLoc = 11327; rType = 0; vrLen = 2442; vrLoc = 9111; @@ -3244,7 +3301,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 457"; rLen = 0; - rLoc = 11679; + rLoc = 11656; rType = 0; vrLen = 2436; vrLoc = 9328; @@ -3274,7 +3331,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 398"; rLen = 0; - rLoc = 9552; + rLoc = 9529; rType = 0; vrLen = 2208; vrLoc = 8870; @@ -3304,7 +3361,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 9945; + rLoc = 9922; rType = 0; vrLen = 2221; vrLoc = 8882; @@ -3334,7 +3391,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 414"; rLen = 0; - rLoc = 9554; + rLoc = 9531; rType = 0; vrLen = 2225; vrLoc = 8882; @@ -3364,7 +3421,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 383"; rLen = 0; - rLoc = 9192; + rLoc = 9169; rType = 0; vrLen = 2085; vrLoc = 8825; @@ -3394,7 +3451,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 460"; rLen = 0; - rLoc = 11679; + rLoc = 11656; rType = 0; vrLen = 1977; vrLoc = 10587; @@ -3424,7 +3481,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 411"; rLen = 0; - rLoc = 9915; + rLoc = 9892; rType = 0; vrLen = 1874; vrLoc = 8967; @@ -3454,7 +3511,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 478"; rLen = 0; - rLoc = 12271; + rLoc = 12248; rType = 0; vrLen = 1498; vrLoc = 10980; @@ -3484,7 +3541,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 495"; rLen = 0; - rLoc = 12626; + rLoc = 12603; rType = 0; vrLen = 1500; vrLoc = 10980; @@ -3514,7 +3571,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 476"; rLen = 0; - rLoc = 12210; + rLoc = 12187; rType = 0; vrLen = 1504; vrLoc = 10980; @@ -3544,7 +3601,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 495"; rLen = 0; - rLoc = 12626; + rLoc = 12603; rType = 0; vrLen = 1502; vrLoc = 10980; @@ -3574,7 +3631,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 495"; rLen = 0; - rLoc = 12646; + rLoc = 12623; rType = 0; vrLen = 1502; vrLoc = 10980; @@ -3604,7 +3661,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 465"; rLen = 0; - rLoc = 11804; + rLoc = 11781; rType = 0; vrLen = 1790; vrLoc = 10449; @@ -3634,7 +3691,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 413"; rLen = 0; - rLoc = 9878; + rLoc = 9855; rType = 0; vrLen = 2035; vrLoc = 9253; @@ -3664,7 +3721,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 413"; rLen = 0; - rLoc = 9892; + rLoc = 9869; rType = 0; vrLen = 1684; vrLoc = 8542; @@ -3694,7 +3751,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 413"; rLen = 0; - rLoc = 9878; + rLoc = 9855; rType = 0; vrLen = 1686; vrLoc = 8542; @@ -3724,7 +3781,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 405"; rLen = 0; - rLoc = 9583; + rLoc = 9560; rType = 0; vrLen = 1679; vrLoc = 8542; @@ -3754,7 +3811,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 466"; rLen = 0; - rLoc = 11804; + rLoc = 11781; rType = 0; vrLen = 1484; vrLoc = 11005; @@ -3784,7 +3841,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 460"; rLen = 0; - rLoc = 11679; + rLoc = 11656; rType = 0; vrLen = 1482; vrLoc = 11005; @@ -3814,7 +3871,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 450"; rLen = 0; - rLoc = 11576; + rLoc = 11553; rType = 0; vrLen = 2204; vrLoc = 9843; @@ -3844,7 +3901,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 434"; rLen = 0; - rLoc = 10693; + rLoc = 10670; rType = 0; vrLen = 2336; vrLoc = 9843; @@ -3874,7 +3931,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 449"; rLen = 0; - rLoc = 11350; + rLoc = 11327; rType = 0; vrLen = 2029; vrLoc = 10544; @@ -3904,7 +3961,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 448"; rLen = 0; - rLoc = 11287; + rLoc = 11264; rType = 0; vrLen = 2030; vrLoc = 10544; @@ -3934,7 +3991,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 448"; rLen = 0; - rLoc = 11287; + rLoc = 11264; rType = 0; vrLen = 2030; vrLoc = 10544; @@ -3964,7 +4021,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 448"; rLen = 0; - rLoc = 11287; + rLoc = 11264; rType = 0; vrLen = 2057; vrLoc = 10544; @@ -3994,7 +4051,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 448"; rLen = 0; - rLoc = 11347; + rLoc = 11324; rType = 0; vrLen = 2279; vrLoc = 10066; @@ -4024,7 +4081,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 448"; rLen = 0; - rLoc = 11293; + rLoc = 11270; rType = 0; vrLen = 2281; vrLoc = 10066; @@ -4054,7 +4111,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2309; vrLoc = 9722; @@ -4084,7 +4141,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2350; vrLoc = 9722; @@ -4134,7 +4191,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2392; vrLoc = 9731; @@ -4164,7 +4221,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2392; vrLoc = 9731; @@ -4194,7 +4251,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2392; vrLoc = 9731; @@ -4224,7 +4281,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2392; vrLoc = 9731; @@ -4254,7 +4311,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 439"; rLen = 0; - rLoc = 10879; + rLoc = 10856; rType = 0; vrLen = 2392; vrLoc = 9731; @@ -4294,7 +4351,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 384"; rLen = 0; - rLoc = 9195; + rLoc = 9172; rType = 0; vrLen = 1711; vrLoc = 10069; @@ -4318,7 +4375,7 @@ fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; name = "supervisor_static_include.h: 440"; rLen = 0; - rLoc = 10882; + rLoc = 10859; rType = 0; vrLen = 1541; vrLoc = 5499; @@ -4343,7 +4400,7 @@ }; 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */ = { uiCtxt = { - sepNavIntBoundsRect = "{{0, 0}, {922, 2856}}"; + sepNavIntBoundsRect = "{{0, 0}, {922, 2688}}"; sepNavSelRange = "{4872, 0}"; sepNavVisRange = "{4373, 1209}"; sepNavWindowFrame = "{{279, 175}, {981, 639}}"; @@ -4486,6 +4543,66 @@ vrLen = 858; vrLoc = 295; }; + 3AF1CBD90FF49FD8002E11EE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 21"; + rLen = 0; + rLoc = 583; + rType = 0; + vrLen = 1091; + vrLoc = 565; + }; + 3AF1CBDA0FF49FD8002E11EE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A752B7D0FE6A2B300091C76 /* pns.c */; + name = "pns.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1093; + vrLoc = 0; + }; + 3AF1CBDB0FF49FD8002E11EE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 21"; + rLen = 0; + rLoc = 583; + rType = 0; + vrLen = 1091; + vrLoc = 565; + }; + 3AF1CBDC0FF49FD8002E11EE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A752B7D0FE6A2B300091C76 /* pns.c */; + name = "pns.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1093; + vrLoc = 0; + }; + 3AF1CBDF0FF49FD8002E11EE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3A99A6500FB8E06100B1F47C /* supervisor_static_include.h */; + name = "supervisor_static_include.h: 440"; + rLen = 0; + rLoc = 10859; + rType = 0; + vrLen = 1282; + vrLoc = 5612; + }; + 3AF1CBE00FF49FD8002E11EE /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 3AEAF9050FB2696400D61E73 /* supervisorCompler.c */; + name = "supervisorCompler.c: 166"; + rLen = 0; + rLoc = 4872; + rType = 0; + vrLen = 1209; + vrLoc = 4373; + }; 3AF3E4270FDA4B8400D2224F /* PBXTextBookmark */ = { isa = PBXTextBookmark; fRef = 3AF3E4280FDA4B8400D2224F /* supervisorCompler.i */; Modified: codegen/src/supervisor_static_include.h =================================================================== --- codegen/src/supervisor_static_include.h 2009-06-27 16:10:17 UTC (rev 111) +++ codegen/src/supervisor_static_include.h 2009-06-28 06:04:00 UTC (rev 112) @@ -314,7 +314,6 @@ int drid = atoi(rid); printf("Plant %d reserving %d-%d on id %d\n",plant,res->u[i].label,res->u[i].t,res->id); } - printf("Here!\n"); track_reservation(r, plant, res); break; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2009-06-27 16:10:18
|
Revision: 111 http://pntool.svn.sourceforge.net/pntool/?rev=111&view=rev Author: thecodeweasel Date: 2009-06-27 16:10:17 +0000 (Sat, 27 Jun 2009) Log Message: ----------- Fixing naming Added Paths: ----------- ANTLR3_LICENSE.txt Removed Paths: ------------- COPYING Copied: ANTLR3_LICENSE.txt (from rev 110, COPYING) =================================================================== --- ANTLR3_LICENSE.txt (rev 0) +++ ANTLR3_LICENSE.txt 2009-06-27 16:10:17 UTC (rev 111) @@ -0,0 +1,29 @@ +// [The "BSD licence"] +// Copyright (c) 2005-2009 Jim Idle, Temporal Wave LLC +// http://www.temporal-wave.com +// http://www.linkedin.com/in/jimidle +// +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// 1. Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// 2. Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in the +// documentation and/or other materials provided with the distribution. +// 3. The name of the author may not be used to endorse or promote products +// derived from this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + Deleted: COPYING =================================================================== --- COPYING 2009-06-27 16:08:23 UTC (rev 110) +++ COPYING 2009-06-27 16:10:17 UTC (rev 111) @@ -1,29 +0,0 @@ -// [The "BSD licence"] -// Copyright (c) 2005-2009 Jim Idle, Temporal Wave LLC -// http://www.temporal-wave.com -// http://www.linkedin.com/in/jimidle -// -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions -// are met: -// 1. Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// 2. Redistributions in binary form must reproduce the above copyright -// notice, this list of conditions and the following disclaimer in the -// documentation and/or other materials provided with the distribution. -// 3. The name of the author may not be used to endorse or promote products -// derived from this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2009-06-27 16:08:29
|
Revision: 110 http://pntool.svn.sourceforge.net/pntool/?rev=110&view=rev Author: thecodeweasel Date: 2009-06-27 16:08:23 +0000 (Sat, 27 Jun 2009) Log Message: ----------- Updating legal stuff Modified Paths: -------------- README.txt translator/README.txt Added Paths: ----------- COPYING Removed Paths: ------------- translator/LICENSE.txt Copied: COPYING (from rev 109, translator/clibs/COPYING) =================================================================== --- COPYING (rev 0) +++ COPYING 2009-06-27 16:08:23 UTC (rev 110) @@ -0,0 +1,29 @@ +// [The "BSD licence"] +// Copyright (c) 2005-2009 Jim Idle, Temporal Wave LLC +// http://www.temporal-wave.com +// http://www.linkedin.com/in/jimidle +// +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions +// are met: +// 1. Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// 2. Redistributions in binary form must reproduce the above copyright +// notice, this list of conditions and the following disclaimer in the +// documentation and/or other materials provided with the distribution. +// 3. The name of the author may not be used to endorse or promote products +// derived from this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + Modified: README.txt =================================================================== --- README.txt 2009-06-27 04:44:10 UTC (rev 109) +++ README.txt 2009-06-27 16:08:23 UTC (rev 110) @@ -4,7 +4,7 @@ Here's the directory structure: pnheaders - these files are maintained by Dr. Iordache. Codegen (and maybe others) compile against these libraries. -translator - this code takes a high-level-language spec and turns it into a pns datastructure. Maintained by Bion Oren. Uses ANTLR. +translator - this code takes a high-level-language spec and turns it into a pns datastructure. Maintained by Bion Oren. Uses ANTLR (translator/clibs/). spnbox - this code generates supervisors? Maintained by Stephen Camp. Uses MILP solver. codegen - these files are maintained by Drew Crawford and Kris Eggert. This will become the code generating portion of the petri net. Deleted: translator/LICENSE.txt =================================================================== --- translator/LICENSE.txt 2009-06-27 04:44:10 UTC (rev 109) +++ translator/LICENSE.txt 2009-06-27 16:08:23 UTC (rev 110) @@ -1,13 +0,0 @@ -ANTLR 3 License - -[The BSD License] -Copyright (c) 2003-2008, Terence Parr -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - * Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file Modified: translator/README.txt =================================================================== --- translator/README.txt 2009-06-27 04:44:10 UTC (rev 109) +++ translator/README.txt 2009-06-27 16:08:23 UTC (rev 110) @@ -1,5 +1,5 @@ #LICENSE NOTES -All ANTLR and related code is distributed under the BSD License (http://www.antlr.org/license.html). See LICENSE.txt for more details. +All ANTLR and related code is distributed under the BSD License (http://www.antlr.org/license.html). My understanding is that this includes the clibs directory (ANTLR C Target libraries) and the generated parser/lexer/treewalker code (pnscriptParser.*, pnscriptLexer.*, pncompactor.c/h, pngenerator.c/h. Also, all *.g files were developed using ANTLRWorks 1.2.3. License files can be found in the top level directory of this project. #DEPENDENCIES: This grammar should build independently on any unix-compliant OS (including Unix emulators) with GCC 4.x or greater, patch, autoconf, and automake. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Ste...@us...> - 2009-06-27 04:44:12
|
Revision: 109 http://pntool.svn.sourceforge.net/pntool/?rev=109&view=rev Author: StephenCamp Date: 2009-06-27 04:44:10 +0000 (Sat, 27 Jun 2009) Log Message: ----------- Changed an ilpadm call in linenf.c to match the new ilpadm definition. Added Makefile for spnbox. Modified pntool makefile to include *.a static library files from the spnbox directory; needed for lpsolve's static library. Note that the makefile that came with lpsolve for producing the library file raises a lot of warnings but no errors when it is run as a part of the overall make. Modified Paths: -------------- Makefile spnbox/linenf.c Added Paths: ----------- spnbox/Makefile Modified: Makefile =================================================================== --- Makefile 2009-06-27 01:52:09 UTC (rev 108) +++ Makefile 2009-06-27 04:44:10 UTC (rev 109) @@ -7,11 +7,15 @@ # the object code. # # 2) Place all relevant object files and libraries in the same directory. -# +# # 3) Place no other object files in that directory (or else please make # appropriate changes below). # # Please make sure all commands can be run in Linux! +# +# Changelog: +# 6/26/09 SC: Changed ct instruction to include static library files +#(.a) from the spnbox directories. This is necessary to link the lpsolve library. # # If you make changes to this format, please document them above. @@ -24,12 +28,12 @@ ct: objectfiles main_function.o $(COMPILER) -o ct $(PNHEADERS)/*.o $(CODEGEN)/*.o $(SPNBOX)/*.o \ - $(TRANSLATOR)/*.o main_function.o + $(TRANSLATOR)/*.o main_function.o $(SPNBOX)/*.a objectfiles: cd $(PNHEADERS); make # cd $(CODEGEN); make -# cd $(SPNBOX); make + cd $(SPNBOX); make # cd $(TRANSLATOR); make main_function.o: $(PNHEADERS)/main_function.c $(PNHEADERS)/pns.h $(SPNBOX)/spnbox.h Added: spnbox/Makefile =================================================================== --- spnbox/Makefile (rev 0) +++ spnbox/Makefile 2009-06-27 04:44:10 UTC (rev 109) @@ -0,0 +1,57 @@ +#This is the makefile for all spnbox functions. +#It is called by the pntool makefile to create object code for all the functions. + +COMPILER=gcc -g + +all: actn.o chkcons.o ilpadm.o ipslv.o ipsolve.o isadm.o linenf.o matrixmath.o MemoryManager.o msplit.o nltrans.o pn2acpn.o pn2eacpn.o supervis.o liblpsolve55.a + +actn.o: actn.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c actn.c + +chkcons.o: chkcons.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h ../pnheaders/pns.h + $(COMPILER) -c chkcons.c + +ilpadm.o: ilpadm.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h ../pnheaders/pns.h + $(COMPILER) -c ilpadm.c + +ipslv.o: ipslv.c spnbox.h lp_solve_5.5/lp_lib.h + $(COMPILER) -c ipslv.c + +ipsolve.o: ipsolve.c spnbox.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c ipsolve.c + +isadm.o: isadm.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c isadm.c + +linenf.o: linenf.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c linenf.c + +matrixmath.o: matrixmath.c matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c matrixmath.c + +MemoryManager.o: MemoryManager.c MemoryManager.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c MemoryManager.c + +msplit.o: msplit.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c msplit.c + +nltrans.o: nltrans.c spnbox.h MemoryManager.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c nltrans.c + +pn2acpn.o: pn2acpn.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c pn2acpn.c + +pn2eacpn.o: pn2eacpn.c spnbox.h MemoryManager.h matrixmath.h ../pnheaders/general.h ../pnheaders/matrix.h + $(COMPILER) -c pn2eacpn.c + +reduce.o: reduce.c spnbox.h ../pnheaders/general.h ../pnheaders/matrix.h ../pnheaders/pns.h + $(COMPILER) -c reduce.c + +supervis.o: supervis.c spnbox.h matrixmath.h ../pnheaders/matrix.h + $(COMPILER) -c supervis.c + +liblpsolve55.a: ./lp_solve_5.5/lpsolve55/liblpsolve55.a + cp ./lp_solve_5.5/lpsolve55/liblpsolve55.a liblpsolve55.a + +./lp_solve_5.5/lpsolve55/liblpsolve55.a: + cd lp_solve_5.5; make -f Makefile.linux lib Modified: spnbox/linenf.c =================================================================== --- spnbox/linenf.c 2009-06-27 01:52:09 UTC (rev 108) +++ spnbox/linenf.c 2009-06-27 04:44:10 UTC (rev 109) @@ -229,7 +229,7 @@ ManageMatrix(&RowMemory, &NewD); /*Transform the marking constraints to admissible marking constraints.*/ - AdmResult = ilpadm(&NewL, b ? b + i : 0, &NewD, NewTucCount, NewTuc, TuoCount, Tuo, Newm0, 1); + AdmResult = ilpadm(&NewL, b ? b + i : 0, &NewD, NewTucCount, NewTuc, TuoCount, Tuo, Newm0); ManageMatrix(&RowMemory, &AdmResult.La); ManageMatrix(&RowMemory, &AdmResult.R1); ManageMatrix(&RowMemory, &AdmResult.R2); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Ste...@us...> - 2009-06-27 02:22:18
|
Revision: 108 http://pntool.svn.sourceforge.net/pntool/?rev=108&view=rev Author: StephenCamp Date: 2009-06-27 01:52:09 +0000 (Sat, 27 Jun 2009) Log Message: ----------- Debugged actn.c. Now passes all tests. Added the parameter 'checkUnique' to the actn function, allowing a time-consuming check to be skipped if the caller does not care about its results. Debugged test-actn.c and added test-actn.mak/txt, the test program, makefile, and test script respectively. Modified Paths: -------------- spnbox/actn.c spnbox/spnbox.h spnbox/tests/test-actn.c Added Paths: ----------- spnbox/tests/test-actn.mak spnbox/tests/test-actn.txt Modified: spnbox/actn.c =================================================================== --- spnbox/actn.c 2009-06-26 22:11:09 UTC (rev 107) +++ spnbox/actn.c 2009-06-27 01:52:09 UTC (rev 108) @@ -6,7 +6,7 @@ static int CheckParams(matrix* Dm, matrix* Dp, int** X, int* XCount, matrix *Dcm, matrix *Dcp, int update); -static int isUnique(matrix* D, int* cullTransition, int* X, int XCount); +static int isUnique(matrix* D, int* X, int XCount); static actn_r BuildResult(matrix* Dm, matrix* Dp, int* cullPlace, int* cullTrans); @@ -16,7 +16,7 @@ static int CheckParams(matrix* Dm, matrix* Dp, int** X, int* XCount, matrix *Dcm, matrix *Dcp, int update); -actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update) +actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update, int checkUnique) { actn_r result; nltrans_r nltransResult; @@ -72,8 +72,12 @@ /*Build the final output.*/ result = BuildResult(Dm, Dp, cullPlace, cullTransition); - /*Do an isUnique test.*/ - result.unique = isUnique(&D, cullTransition, X, XCount); + /*Do an isUnique test only if the checkUnique flag is set, since the test + does several linear programming problems and is thus rather slow.*/ + if (checkUnique) + { + result.unique = isUnique(&D, X, XCount); + } /*Clean up.*/ FreeMemory(&memory); @@ -81,31 +85,35 @@ return result; } -int isUnique(matrix* D, int* cullTransition, int* X, int XCount) +int isUnique(matrix* D, int* X, int XCount) { - /*We will be doing a linear programming problem for each raisable (non-culled) - transition. The constraint matrix will be the subset of D having only the - columns corresponding to non-culled transitions, with a row of 1s concatenated - onto the bottom, and the column corresponding to whichever transition is - currently being tested removed (or in this case, zeroed).*/ + /*We will be doing a linear programming problem for each raisable transition. + The constraint matrix will be the subset of D having only the columns + corresponding to transitions not in X, with a row of 1s concatenated onto the + bottom, and the column corresponding to whichever transition is currently + being tested removed (or in this case, zeroed).*/ matrix Dx, dx; int i, j, Transitions = 0; + int* UnraisableT; double* B; short int *IntList; ipsolve_r result; - /*Count the number of transitions we'll need.*/ - for (i = 0; i < NumberOfColumns(*D); i++) + + //If no transitions are being evaluated, return true. + if ((Transitions = NumberOfColumns(*D) - XCount) <= 0) return 1; + /*Build a flag array of the columns whose indices are in X.*/ + UnraisableT = tcalloc(NumberOfColumns(*D), sizeof(int)); + for (i = 0; i < XCount; i++) { - if (! cullTransition[i]) Transitions++; + UnraisableT[X[i]] = 1; } - - /*Build Dx*/ - AllocateMatrixType(2, &Dx, NumberOfRows(*D) + 1, Transitions); - j = 0; + /*Build Dx. It should include only columns of D whose indices are not in X.*/ + AllocateMatrixType(2, &Dx, NumberOfRows(*D) + 1, Transitions); for (i = 0; i < NumberOfColumns(*D); i++) { - if (! cullTransition[i]) + + if (! UnraisableT[i]) { /*Fill in the last row.*/ SetMatrixEl(&Dx, NumberOfRows(*D), j, 1); @@ -113,26 +121,28 @@ CopyBlock(NumberOfRows(*D), 1, D, 0, i, &Dx, 0, j++); } } + //We are done with the flag array. Free memory. + free(UnraisableT); + /*Allocate space to record the values of the current column while it is zeroed.*/ - AllocateMatrixType(1, &dx, NumberOfRows(*D) + 1, 1); - CopyBlock(NumberOfRows(*D), 1, D, 0, 0, &Dx, 0, 0); + AllocateMatrixType(1, &dx, NumberOfRows(*D) + 1, 1); /*Build B. It is all zeroes except for a 1 in the last element.*/ B = tcalloc(NumberOfRows(*D) + 1, sizeof(double)); - B[NumberOfRows(Dx)] = 1; + B[NumberOfRows(*D)] = 1; /*IntList needs to be all zeroes to override the default of all 1s.*/ IntList = tcalloc(Transitions, sizeof(short int)); /*Iterate through each transition*/ - for (i = 1; i < Transitions; i++) + for (i = 0; i < Transitions; i++) { /*Zero a column of Dx and store it temporarily in dx for later restoration*/ for (j = 0; j <= NumberOfRows(*D); j++) { - //Restore the previous transition. - SetMatrixEl(&Dx, j, i - 1, GetMatrixEl(&dx, j, 0)); + //Restore the previous transition (if there is one to restore) + if (i) SetMatrixEl(&Dx, j, i - 1, GetMatrixEl(&dx, j, 0)); //Copy the current transition SetMatrixEl(&dx, j, 0, GetMatrixEl(&Dx, j, i)); //Zero the current transition. @@ -145,7 +155,7 @@ if (! strcmp(result.mhow, HOW_OK)) { free(IntList); - free(B); + free(B); DeallocateMatrix(&Dx); DeallocateMatrix(&dx); return 0; @@ -153,7 +163,7 @@ } //If we get through all transition without returning false, return true. free(IntList); - free(B); + free(B); DeallocateMatrix(&Dx); DeallocateMatrix(&dx); return 1; @@ -191,13 +201,13 @@ result.TA = tcalloc(Transitions, sizeof(int)); result.TACount = Transitions; /*Do the copy. k and l indicate the row and column numbers in the Dmra/Dpra - matrices. Fill in TA while we're at it.*/ - k = 0; + matrices. Fill in TA while we're at it.*/ l = 0; - for (j = 0; j < NumberOfColumns(*Dm); i++) + for (j = 0; j < NumberOfColumns(*Dm); j++) { if (cullTrans[j]) continue; - for (i = 0; i < NumberOfPlaces(*Dm); i++) + k = 0; + for (i = 0; i < NumberOfRows(*Dm); i++) { if (cullPlace[i]) continue; SetMatrixEl(&result.Dma, i, j, GetMatrixEl(Dm, i, j)); @@ -269,7 +279,7 @@ /*URT is a flag vector with an element for each transition. It is initially cleared only for non-null columns of Dcm/Dcp, where column numbers in Dcm/Dcp - map to the same column numbers in Dm/Dp. Trans defaults to its logic inverse.*/ + map to the same column numbers in Dm/Dp.*/ for (i = 0; i < SubTransitions; i++) { /*See if the current column of Dcm/Dcp is non-null.*/ @@ -280,15 +290,11 @@ break; } } - /*If it was null, set the URT flag. If it was not, set the Trans flag.*/ + /*If it was null, set the URT flag.*/ if (j == SubPlaces) { URT[i] = 1; } - else - { - Trans[i] = 1; - } } /*Fill the additional elements of URT, the ones not taken care of above.*/ for (i = SubTransitions; i < Transitions; i++) @@ -296,28 +302,54 @@ URT[i] = 1; } - /*Now, we loop.*/ + /*Now, we loop. For the first iteration we have to do something special. Use + keepGoing = -1 to indicate first loop iteration.*/ + keepGoing = -1; do { /*The place flag should be set for any place (in Dm/Dp beyond those mapped to by Dcm/Dcp) such that the place has at least one nonzero output arc to a transition that is flagged in the current transition list. It should - be cleared for every other place*/ + be cleared for every other place. On the first loop iteration, rather + than using the current transition list (which maps to the columns in the + right of Dm/Dp that have no corresponding columns in Dcm/Dcp), we use logic + inverse of URT, which maps to all columns in Dm/Dp. The keepGoing flag will + be set to -1 on the first iteration.*/ memset(Place, 0, sizeof(int) * (Places - SubPlaces)); - for (i = SubPlaces; i < Places; i++) + if (keepGoing > 0) + { + for (i = SubPlaces; i < Places; i++) + { + /*Check to see if the current place has at least one nonzero output arc + to a transition flagged in the current transition list.*/ + for (j = SubTransitions; j < Transitions; j++) + { + if (Trans[j - SubTransitions] && GetMatrixEl(Dm, i, j)) + { + /*If it does, set the flag and break out of the test loop.*/ + Place[i - SubPlaces] = 1; + break; + } + } + } + } + else { - /*Check to see if the current place has at least one nonzero output arc - to a transition flagged in the current transition list.*/ - for (j = SubTransitions; j < Transitions; j++) + for (i = SubPlaces; i < Places; i++) { - if (Trans[j - SubTransitions] && GetMatrixEl(Dm, i, j)) + /*Check to see if the current place has at least one nonzero output arc + to a transition not flagged in URT.*/ + for (j = 0; j < SubTransitions; j++) { - /*If it does, set the flag and break out of the test loop.*/ - Place[i - SubPlaces] = 1; - break; + if ((! URT[j]) && GetMatrixEl(Dm, i, j)) + { + /*If it does, set the flag and break out of the test loop.*/ + Place[i - SubPlaces] = 1; + break; + } } } - } + } /*Similarly, the transition flag should be set for any transition in Dm/Dp beyond those mapped to by Dcm/Dcp such that the transition has at least one nonzero input arc to a place that is flagged in the current place list. Modified: spnbox/spnbox.h =================================================================== --- spnbox/spnbox.h 2009-06-26 22:11:09 UTC (rev 107) +++ spnbox/spnbox.h 2009-06-27 01:52:09 UTC (rev 108) @@ -246,7 +246,6 @@ All parameters after the first three are optional.*/ ipslv_r ipslv(REAL* f, REAL** L, REAL* b, int m, int n, int* intlist, REAL* ub, REAL* lb, int* ctype); - /* This is the interface of ipsolve to LPSOLVE. m: the number of rows of L; n: the number of columns of L; See ipsolve for the meaning of the remaining parameters. */ @@ -493,7 +492,7 @@ Converted to C by Marian Iordache and Stephen Camp, ste...@le.... */ -actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update); +actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update, int checkUnique); /* ACTN - The active subnet of a Petri net Modified: spnbox/tests/test-actn.c =================================================================== --- spnbox/tests/test-actn.c 2009-06-26 22:11:09 UTC (rev 107) +++ spnbox/tests/test-actn.c 2009-06-27 01:52:09 UTC (rev 108) @@ -1,5 +1,6 @@ #include "../../pnheaders/matrix.h" #include "../spnbox.h" +#include "../matrixmath.h" #include "../MemoryManager.h" #include "StructuredIO.h" @@ -10,69 +11,80 @@ } static FILE* GetInput(int argc, char* argv[]); -static void GetOutFilled(reduce_r* result, int OutFilled[]); static int HasSelfLoops(matrix* Dm, matrix* Dp); static void FillDmDp(int* Filled, matrix* D, matrix* Dm, matrix* Dp); -//actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update) int main(int argc, char* argv[]) { FILE* input; matrix Dm, Dp, D, Dc, Dcm, Dcp, Da, Dra; - int XCount, update; + int XCount, update, i; int *X, *InFilled; - int OutFilled[7]; + int OutFilled[8]; actn_r result; MemoryManager memory; char InputDesc[] = "matrix D, matrix Dm, matrix Dp, matrix Dc, matrix Dcm, matrix Dcp, arrayi X, int update"; - char OutputDesc[] = "matrix Da, matrix Dma, matrix Dpa, matrix Dra, matrix Dmra, matrix Dpra, int Unique"; + char OutputDesc[] = "matrix Da, matrix Dma, matrix Dpa, matrix Dra, matrix Dmra, matrix Dpra, arrayi TA, int Unique"; /*Get the input file.*/ if (! (input = GetInput(argc, argv))) return 0; - memory = CreateMemoryManager(5, 5, 0, 0); + memory = CreateMemoryManager(10, 10, 0, 0); while (ParseStructure(input, InputDesc, &InFilled, &memory, &D, &Dm, &Dp, &Dc, &Dcm, &Dcp, &X, &XCount, &update)) { - /*See whether incidence or separate i/o matrices were provided.*/ + /*Display the problem*/ + printf("Problem:\n"); + DisplayStructure(InputDesc, InFilled, &D, &Dm, &Dp, &Dc, &Dcm, &Dcp, X, XCount, update); + + /*See whether incidence or separate i/o matrices were provided and if the + former, then fill the i/o matrices.*/ FillDmDp(InFilled, &D, &Dm, &Dp); FillDmDp(InFilled + 3, &Dc, &Dcm, &Dcp); + + /*Solve the problem*/ + //actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update) + result = actn((InFilled[0] || InFilled[1]) ? &Dm : 0, (InFilled[0] || InFilled[2]) ? &Dp : 0, InFilled[6] ? X : 0, XCount, (InFilled[3] || InFilled[4]) ? &Dcm : 0, (InFilled[3] || InFilled[5]) ? &Dcp : 0, InFilled[7] ? update : 0, 1); - /*If there are no self loops, display only the incidence matrices.*/ - if (! HasSelfLoops(&Dm, &Dp)) + for (i = 0; i < 8; i++) { - if (InFilled[0 - /*Display the problem*/ - printf("Problem:\n"); - DisplayStructure(InputDesc, InFilled, &L, B, BCount); + OutFilled[i] = 1; + } + if (HasSelfLoops(&result.Dma, &result.Dpa)) + { + OutFilled[0] = 0; + } + else + { + Da = SubtractMatrix(&result.Dpa, &result.Dma, 0); + ManageMatrix(&memory, &Da); + OutFilled[1] = 0; + OutFilled[2] = 0; + } + if (HasSelfLoops(&result.Dmra, &result.Dpra)) + { + OutFilled[3] = 0; + } + else + { + Dra = SubtractMatrix(&result.Dpra, &result.Dmra, 0); + ManageMatrix(&memory, &Dra); + OutFilled[4] = 0; + OutFilled[5] = 0; + } - /*Solve the problem*/ - result = reduce(InFilled[0] ? &L : 0, InFilled[1] ? B : 0, 1); - - /*Display the solution*/ - GetOutFilled(&result, OutFilled); + /*Display the solution. If there are no self loops, display incidence + matrices instead of whole matrices.*/ + printf("Result:\n"); - DisplayStructure(OutputDesc, OutFilled, &result.Lf, result.Bf, NumberOfRows(result.Lf), result.indf, NumberOfRows(result.Lf), result.how); + DisplayStructure(OutputDesc, OutFilled, &Da, &result.Dma, &result.Dpa, &Dra, &result.Dmra, &result.Dpra, result.TA, result.TACount, result.unique); FreeMemory(&memory); - memory = CreateMemoryManager(4, 1, 0, 0); + memory = CreateMemoryManager(10, 10, 0, 0); printf("-----------------------------------------------------------------\n"); } FreeMemory(&memory); return 0; } -void GetOutFilled(reduce_r* result, int OutFilled[]) -{ - /*Clear OutFilled*/ - memset(OutFilled, 0, 4 * sizeof(int)); - - /*Set OutFilled flags only if the corresponding pointers are not null.*/ - if (NumberOfRows(result->Lf)) OutFilled[0] = 1; - if (result->Bf) OutFilled[1] = 1; - if (result->indf) OutFilled[2] = 1; - /*How is always filled since it is just an integer type.*/ - OutFilled[3] = 1; -} - int HasSelfLoops(matrix* Dm, matrix* Dp) { int i, j; Added: spnbox/tests/test-actn.mak =================================================================== --- spnbox/tests/test-actn.mak (rev 0) +++ spnbox/tests/test-actn.mak 2009-06-27 01:52:09 UTC (rev 108) @@ -0,0 +1,37 @@ +COMPILER=gcc -g -ggdb + +test-actn: test-actn.o pns.o matrix.o general.o matrixmath.o ipsolve.o MemoryManager.o ipslv.o StructuredIO.o nltrans.o actn.o + $(COMPILER) -o test-actn.exe pns.o matrix.o general.o matrixmath.o test-actn.o ipsolve.o ipslv.o MemoryManager.o StructuredIO.o nltrans.o actn.o ../lp_solve_5.5/lpsolve55/liblpsolve55.a + +matrix.o: ../../pnheaders/matrix.c ../../pnheaders/matrix.h ../../pnheaders/pns.h + $(COMPILER) -c ../../pnheaders/matrix.c + +pns.o: ../../pnheaders/pns.h ../../pnheaders/pns.c ../../pnheaders/general.h + $(COMPILER) -c ../../pnheaders/pns.c + +general.o: ../../pnheaders/general.h ../../pnheaders/general.c + $(COMPILER) -c ../../pnheaders/general.c + +matrixmath.o: ../matrixmath.c ../matrixmath.h ../../pnheaders/general.h ../../pnheaders/matrix.h + $(COMPILER) -c ../matrixmath.c + +ipsolve.o: ../spnbox.h ../matrixmath.h ../../pnheaders/general.h ../../pnheaders/matrix.h ../MemoryManager.h ../ipsolve.c + $(COMPILER) -c ../ipsolve.c + +ipslv.o: ../spnbox.h ../ipslv.c + $(COMPILER) -c ../ipslv.c + +MemoryManager.o: ../MemoryManager.h ../MemoryManager.c ../../pnheaders/general.h ../../pnheaders/matrix.h + $(COMPILER) -c ../MemoryManager.c + +test-actn.o: test-actn.c ../spnbox.h ../MemoryManager.h + $(COMPILER) -c test-actn.c + +StructuredIO.o: StructuredIO.c StructuredIO.h ../../pnheaders/matrix.h + $(COMPILER) -c StructuredIO.c + +nltrans.o: ../nltrans.c ../spnbox.h ../../pnheaders/matrix.h ../matrixmath.h ../MemoryManager.h + $(COMPILER) -c ../nltrans.c + +actn.o: ../actn.c ../spnbox.h ../../pnheaders/matrix.h ../../pnheaders/pns.h ../matrixmath.h ../MemoryManager.h + $(COMPILER) -c ../actn.c Added: spnbox/tests/test-actn.txt =================================================================== --- spnbox/tests/test-actn.txt (rev 0) +++ spnbox/tests/test-actn.txt 2009-06-27 01:52:09 UTC (rev 108) @@ -0,0 +1,77 @@ +rem Valid problem parts (types/keywords): +rem matrix D, matrix Dm, matrix Dp - The problem incidence or i/o matrices +rem matrix Dc, matrix Dcm, matrix Dcp - The active subnet incidence or i/o matrices. +rem arrayi X - the unraisable transitions. +rem int update - a flag indicating whether or not to update. + +echo Problem 1 +echo Using just an incidence matrix. +echo The active subnet should include transitions 4, 5, and 6. +echo Unique should be 0. + +D 6 8 +-1 -2 0 0 0 0 0 0 +0 -1 -2 0 0 0 0 0 +0 0 -1 -2 0 0 0 0 +1 1 0 0 6 -2 0 -1 +0 0 1 1 0 -3 6 0 +0 0 0 0 -2 2 -2 0 + +done + +echo Problem 2 +echo Using the same Petri net as before but forcing transition 5 to be +echo unraisable. The active subnet should now be empty. +echo Unique should be 1. + +D 6 8 +-1 -2 0 0 0 0 0 0 +0 -1 -2 0 0 0 0 0 +0 0 -1 -2 0 0 0 0 +1 1 0 0 6 -2 0 -1 +0 0 1 1 0 -3 6 0 +0 0 0 0 -2 2 -2 0 + +X 1 +5 + +done + +echo Problem 3 +echo This problem uses the PT-ordinary version of the petri net from problems +echo 1 and 2 with an extra row added. That is, a row has been added, the net has +echo been fed to msplit, and the result used here. It also uses as the +echo precalculated active subnet matrix returned in Problem 1. + +D 14 15 +-1 -1 0 0 0 0 0 0 -1 0 0 0 0 0 0 +0 -1 -1 0 0 0 0 0 0 -1 0 0 0 0 0 +0 0 -1 -1 0 0 0 0 0 0 -1 0 0 0 0 +1 1 0 0 6 -1 0 -1 0 0 0 0 -1 0 0 +0 0 1 1 0 -1 6 0 0 0 0 0 -1 -1 0 +0 0 0 0 -1 2 -1 0 0 0 0 -1 0 0 -1 +0 0 0 0 1 -1 1 0 0 0 0 0 -1 0 0 +0 -1 0 0 0 0 0 0 1 0 0 0 0 0 0 +0 0 -1 0 0 0 0 0 0 1 0 0 0 0 0 +0 0 0 -1 0 0 0 0 0 0 1 0 0 0 0 +0 0 0 0 -1 0 0 0 0 0 0 1 0 0 0 +0 0 0 0 0 -1 0 0 0 0 0 0 1 0 0 +0 0 0 0 0 0 0 0 0 0 0 0 -1 1 0 +0 0 0 0 0 0 -1 0 0 0 0 0 0 0 1 + +Dc 6 8 +0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 +0 0 0 0 6 -2 0 -1 +0 0 0 0 0 -3 6 0 +0 0 0 0 -2 2 -2 0 + +update 1 + +done + +echo The solution should have nonzero arcs in rows: 4, 5, 6, 7, 11, 12, 13, 14 +echo The solution should have nonzero arcs in cols: 5, 6, 7, 8, 12, 13, 14, 15 + +quit \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mio...@us...> - 2009-06-26 22:11:25
|
Revision: 107 http://pntool.svn.sourceforge.net/pntool/?rev=107&view=rev Author: miordache Date: 2009-06-26 22:11:09 +0000 (Fri, 26 Jun 2009) Log Message: ----------- correction to main function Modified Paths: -------------- pnheaders/main_function.c pnheaders/matrix.c pnheaders/matrix.h Modified: pnheaders/main_function.c =================================================================== --- pnheaders/main_function.c 2009-06-26 20:07:50 UTC (rev 106) +++ pnheaders/main_function.c 2009-06-26 22:11:09 UTC (rev 107) @@ -7,7 +7,7 @@ int main(int na, char* argv[]) { - int i, j, l1, l2, UcCnt, UoCnt, *Tuc, *Tuo; + int i, j, l1, l2, UCcnt, UOcnt, *Tuc, *Tuo, *UClst, *UOlst; int labelcount = 0; char* input; FILE* f; @@ -107,15 +107,13 @@ Tuo[i] = pn.t[i].unobservable; } - for(i = 0, UcCnt = 0, UoCnt = 0; i < pn.tnum; i++) { - UcCnt += Tuc[i]; - UoCnt += Tuo[i]; - } + UCcnt = findIndices(Tuc, pn.tnum, sizeof(*Tuc), &UClst); + UOcnt = findIndices(Tuo, pn.tnum, sizeof(*Tuo), &UOlst); lin_res = linenf(&pn.out, &pn.in, &L, B, pn.marking, &H, &C, \ - UcCnt, Tuc, UoCnt, Tuo); + UCcnt, UClst, UOcnt, UOlst); - free(Tuc); free(Tuo); + free(Tuc); free(Tuo); free(UClst); free(UOlst); // Check whether SC was successful Modified: pnheaders/matrix.c =================================================================== --- pnheaders/matrix.c 2009-06-26 20:07:50 UTC (rev 106) +++ pnheaders/matrix.c 2009-06-26 22:11:09 UTC (rev 107) @@ -422,6 +422,36 @@ } +struct u8 { + unsigned i:8; +}; + +int findIndices(void* vect, int n, int esize, int** answer ) { +/* Finds the indices of the nonzero elements of 'vect'. Here, 'vect' is a + vector of 'n' elements. Each element of 'vect' has the size 'esize'. The + return value is the number of nonzero indices. Further, the indices are + stored in 'answer'. Note that *answer is a pointer to memory allocated + in this function. Memory is always allocated, even if there are no indices. + + This function is similar to the find function of Matlab. */ + + int count, i, j; + void* p; + + *answer = tcalloc(n, sizeof(int)); + + for(count = 0, i = 0, p = vect; i < n; i++, p+= esize) + for(j = 0; j < esize; j++) + if( ( (struct u8*)p + j )->i ) { + (*answer)[count++] = i; + break; + } + + return count; +} + + + void free2Darray(int** ar, int nr) { /* Used to deallocate an array created with matrix2array or vector2array; nr is the number of rows */ @@ -466,7 +496,7 @@ default: merror(0, "MATRIX: The operation is not implemented."); } - memset(m, 0, sizeof(matrix)); + memset(m, 0, sizeof(*m)); } Modified: pnheaders/matrix.h =================================================================== --- pnheaders/matrix.h 2009-06-26 20:07:50 UTC (rev 106) +++ pnheaders/matrix.h 2009-06-26 22:11:09 UTC (rev 107) @@ -127,6 +127,16 @@ int** matrix2array(matrix m); /* Converts a matrix object to an array of integers: result[i][j] = elem(i,j)*/ +int findIndices(void* vect, int n, int esize, int** answer ); +/* Finds the indices of the nonzero elements of 'vect'. Here, 'vect' is a + vector of 'n' elements. Each element of 'vect' has the size 'esize'. The + return value is the number of nonzero indices. Further, the indices are + stored in 'answer'. Note that *answer is a pointer to memory allocated + in this function. Memory is always allocated, even if there are no indices. + + This function is similar to the find function of Matlab. */ + + void free2Darray(int** ar, int nr); /* Use to deallocate an array created with matrix2array or vector2array; nr is the number of rows */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mio...@us...> - 2009-06-26 20:08:11
|
Revision: 106 http://pntool.svn.sourceforge.net/pntool/?rev=106&view=rev Author: miordache Date: 2009-06-26 20:07:50 +0000 (Fri, 26 Jun 2009) Log Message: ----------- updated createpn Modified Paths: -------------- pnheaders/pns.c Modified: pnheaders/pns.c =================================================================== --- pnheaders/pns.c 2009-06-26 17:34:05 UTC (rev 105) +++ pnheaders/pns.c 2009-06-26 20:07:50 UTC (rev 106) @@ -66,17 +66,21 @@ pns createpn(const char *str, ...) { pns pn; va_list param; + char* s; + char opt[] = "zero "; /* to set first the pn to zero */ - /* Make pn = 0 */ + s = tmalloc((1+strlen(str)+strlen(opt))*sizeof(char)); + strcpy(s, opt); + strcat(s, str); - va_start(param, str); - _updatepn(&pn, "zero", param); - /* Do the initializations */ - _updatepn(&pn, str, param); + va_start(param, str); + _updatepn(&pn, s, param); va_end(param); + free(s); + return pn; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2009-06-26 17:35:33
|
Revision: 105 http://pntool.svn.sourceforge.net/pntool/?rev=105&view=rev Author: thecodeweasel Date: 2009-06-26 17:34:05 +0000 (Fri, 26 Jun 2009) Log Message: ----------- Temporarily hacked to build against the pns libraries Miscellaneous cleanup Fixed some memory handling issues Rewrote some linked list constructors. This version is a little slower, but I feel better about not leaking memory. Modified Paths: -------------- translator/Makefile translator/dataStructures.h translator/docs/TODO.rtf translator/main.c translator/pncompactor.c translator/pncompactor.g translator/pncompactor.h translator/pngenerator.c translator/pngenerator.g translator/pngenerator.h translator/pnscript.g translator/pnscriptLexer.c translator/pnscriptLexer.h translator/pnscriptParser.c translator/pnscriptParser.h Modified: translator/Makefile =================================================================== --- translator/Makefile 2009-06-26 16:29:32 UTC (rev 104) +++ translator/Makefile 2009-06-26 17:34:05 UTC (rev 105) @@ -1,4 +1,4 @@ -COMPILER=gcc -g +COMPILER=gcc -g -Wall -O0 INCLUDES=-iquote../pnheaders -Iclibs -Iclibs/include pnscript : dataStructures.o main.o pnscriptParser.o pnscriptLexer.o pncompactor.o pngenerator.o Modified: translator/dataStructures.h =================================================================== --- translator/dataStructures.h 2009-06-26 16:29:32 UTC (rev 104) +++ translator/dataStructures.h 2009-06-26 17:34:05 UTC (rev 105) @@ -29,6 +29,8 @@ char* (*iterKeys) (struct ASSOC_ARRAY_struct* array, int i); } ASSOC_ARRAY; +ASSOC_ARRAY* newAssocArray(ANTLR3_UINT32 sizeHint); + typedef struct pizza_struct { pns* pn; int tran; Modified: translator/docs/TODO.rtf =================================================================== --- translator/docs/TODO.rtf 2009-06-26 16:29:32 UTC (rev 104) +++ translator/docs/TODO.rtf 2009-06-26 17:34:05 UTC (rev 105) @@ -24,7 +24,7 @@ \strike \strikec0 Implement error handling(/recovery?) - use flags for warning levels?\strike0\striked0 \ \strike \strikec0 Update README\ \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural -\cf0 \strikec0 Allow threads to be declared with no initial marking\strike0\striked0 \ +\cf0 Allow threads to be declared with no initial marking\strike0\striked0 \ Debug weird cygwin memory corruption\ dealloc the specs structure in testing\ \strike \strikec0 improve documentation\strike0\striked0 \ @@ -32,5 +32,6 @@ look at improving antlr's error handling\ \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural \cf0 Generate test data\ +Type isn't being specified on constraint expressions\ \strike \strikec0 Apparently the constraint list was supposed to be a linked list. Change to use that.\strike0\striked0 \ Implement a tree walker to "balance" the equations} \ No newline at end of file Modified: translator/main.c =================================================================== --- translator/main.c 2009-06-26 16:29:32 UTC (rev 104) +++ translator/main.c 2009-06-26 17:34:05 UTC (rev 105) @@ -25,7 +25,7 @@ // // Jim Idle (jimi cut-this at idle ws) // - +//file://localhost/Users/bion/projects/iordache/translator/LICENSE.txt // You may adopt your own practices by all means, but in general it is best // to create a single include for your project, that will include the ANTLR3 C // runtime header files, the generated header files (all of which are safe to include @@ -213,8 +213,8 @@ // time(&start); - processes = (ASSOC_ARRAY*) newAssocArray(32); - threads = (ASSOC_ARRAY*) newAssocArray(256); + processes = newAssocArray(32); + threads = newAssocArray(256); printf("Parsing input spec...\n"); pnscriptAST = psr->pn(psr, tstream, processes, threads); @@ -264,6 +264,9 @@ fprintf(stderr, "The parser returned %d error(s), code generation aborted.\n", generator->pTreeParser->rec->state->errorCount); } + dealloc_specs(output); output = NULL; + processes ->free (processes); processes = NULL; + threads ->free (threads); threads = NULL; nodes ->free (nodes); nodes = NULL; generator ->free (generator); generator = NULL; } Modified: translator/pncompactor.c =================================================================== --- translator/pncompactor.c 2009-06-26 16:29:32 UTC (rev 104) +++ translator/pncompactor.c 2009-06-26 17:34:05 UTC (rev 105) @@ -2,7 +2,7 @@ * This C source file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pncompactor.g - * - On : 2009-06-24 16:28:18 + * - On : 2009-06-25 21:09:30 * - for the tree parser : pncompactorTreeParser * * Editing it, at least manually, is not wise. * @@ -690,129 +690,129 @@ /** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq358 */ static ANTLR3_BITWORD FOLLOW_eq_in_eq358_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq358 = { FOLLOW_eq_in_eq358_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression381 */ -static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression381_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression381 = { FOLLOW_EQ_OP_in_relationalExpression381_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression383 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression383_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression383 = { FOLLOW_additiveExpression_in_relationalExpression383_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression387 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression387_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression387 = { FOLLOW_additiveExpression_in_relationalExpression387_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression408 */ -static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression408_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression408 = { FOLLOW_primary_in_additiveExpression408_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression418 */ -static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression418_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression418 = { FOLLOW_PLUS_in_additiveExpression418_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression422 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression422_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression422 = { FOLLOW_additiveExpression_in_additiveExpression422_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression439 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression439_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression439 = { FOLLOW_additiveExpression_in_additiveExpression439_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression489 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression489_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression489 = { FOLLOW_MINUS_in_additiveExpression489_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression493 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression493_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression493 = { FOLLOW_additiveExpression_in_additiveExpression493_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression509 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression509_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression509 = { FOLLOW_additiveExpression_in_additiveExpression509_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary570 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_primary570_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary570 = { FOLLOW_MINUS_in_primary570_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary574 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary574_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary574 = { FOLLOW_eq_in_primary574_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary589 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_primary589_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary589 = { FOLLOW_group_elements_in_primary589_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary630 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary630_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary630 = { FOLLOW_number_in_primary630_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary641 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary641_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary641 = { FOLLOW_MULT_in_primary641_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary643 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary643_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary643 = { FOLLOW_number_in_primary643_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary645 */ -static ANTLR3_BITWORD FOLLOW_primary_in_primary645_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary645 = { FOLLOW_primary_in_primary645_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary680 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary680_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary680 = { FOLLOW_MULT_in_primary680_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary682 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary682_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary682 = { FOLLOW_number_in_primary682_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary686 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary686_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary686 = { FOLLOW_eq_in_primary686_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def710 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def710_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def710 = { FOLLOW_LIVE_in_live_def710_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def712 */ -static ANTLR3_BITWORD FOLLOW_ALL_in_live_def712_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def712 = { FOLLOW_ALL_in_live_def712_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def714 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def714_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def714 = { FOLLOW_ID_in_live_def714_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def722 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def722_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def722 = { FOLLOW_LIVE_in_live_def722_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def724 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def724_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def724 = { FOLLOW_ID_in_live_def724_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol736 */ -static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol736_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol736 = { FOLLOW_UNCONTROL_in_uncontrol736_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol738 */ -static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol738_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol738 = { FOLLOW_ID_in_uncontrol738_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve750 */ -static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve750_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve750 = { FOLLOW_UNOBSERVE_in_unobserve750_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve752 */ -static ANTLR3_BITWORD FOLLOW_ID_in_unobserve752_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve752 = { FOLLOW_ID_in_unobserve752_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands764 */ -static ANTLR3_BITWORD FOLLOW_print_in_other_commands764_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands764 = { FOLLOW_print_in_other_commands764_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print774 */ -static ANTLR3_BITWORD FOLLOW_PRINT_in_print774_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print774 = { FOLLOW_PRINT_in_print774_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print776 */ -static ANTLR3_BITWORD FOLLOW_ID_in_print776_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_print776 = { FOLLOW_ID_in_print776_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print778 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_print778_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print778 = { FOLLOW_group_elements_in_print778_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number797 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number797_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number797 = { FOLLOW_INT_in_number797_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number810 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_number810_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number810 = { FOLLOW_MINUS_in_number810_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number812 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number812_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number812 = { FOLLOW_INT_in_number812_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements830 */ -static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements830_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements830 = { FOLLOW_GROUP_in_group_elements830_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements832 */ -static ANTLR3_BITWORD FOLLOW_ID_in_group_elements832_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements832 = { FOLLOW_ID_in_group_elements832_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID843 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID843_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID843 = { FOLLOW_ID_in_numbered_ID843_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID849 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID849_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID849 = { FOLLOW_ID_in_numbered_ID849_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID851 */ -static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID851_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID851 = { FOLLOW_INT_in_numbered_ID851_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression376 */ +static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression376_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression376 = { FOLLOW_EQ_OP_in_relationalExpression376_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression378 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression378_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression378 = { FOLLOW_additiveExpression_in_relationalExpression378_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression382 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression382_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression382 = { FOLLOW_additiveExpression_in_relationalExpression382_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression403 */ +static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression403_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression403 = { FOLLOW_primary_in_additiveExpression403_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression413 */ +static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression413_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression413 = { FOLLOW_PLUS_in_additiveExpression413_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression417 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression417_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression417 = { FOLLOW_additiveExpression_in_additiveExpression417_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression434 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression434_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression434 = { FOLLOW_additiveExpression_in_additiveExpression434_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression484 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression484_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression484 = { FOLLOW_MINUS_in_additiveExpression484_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression488 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression488_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression488 = { FOLLOW_additiveExpression_in_additiveExpression488_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression504 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression504_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression504 = { FOLLOW_additiveExpression_in_additiveExpression504_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary565 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_primary565_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary565 = { FOLLOW_MINUS_in_primary565_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary569 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary569_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary569 = { FOLLOW_eq_in_primary569_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary584 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_primary584_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary584 = { FOLLOW_group_elements_in_primary584_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary625 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary625_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary625 = { FOLLOW_number_in_primary625_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary636 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary636_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary636 = { FOLLOW_MULT_in_primary636_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary638 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary638_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary638 = { FOLLOW_number_in_primary638_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary640 */ +static ANTLR3_BITWORD FOLLOW_primary_in_primary640_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary640 = { FOLLOW_primary_in_primary640_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary675 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary675_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary675 = { FOLLOW_MULT_in_primary675_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary677 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary677_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary677 = { FOLLOW_number_in_primary677_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary681 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary681_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary681 = { FOLLOW_eq_in_primary681_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def705 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def705_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def705 = { FOLLOW_LIVE_in_live_def705_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def707 */ +static ANTLR3_BITWORD FOLLOW_ALL_in_live_def707_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def707 = { FOLLOW_ALL_in_live_def707_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def709 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def709_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def709 = { FOLLOW_ID_in_live_def709_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def717 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def717_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def717 = { FOLLOW_LIVE_in_live_def717_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def719 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def719_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def719 = { FOLLOW_ID_in_live_def719_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol731 */ +static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol731_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol731 = { FOLLOW_UNCONTROL_in_uncontrol731_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol733 */ +static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol733_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol733 = { FOLLOW_ID_in_uncontrol733_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve745 */ +static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve745_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve745 = { FOLLOW_UNOBSERVE_in_unobserve745_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve747 */ +static ANTLR3_BITWORD FOLLOW_ID_in_unobserve747_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve747 = { FOLLOW_ID_in_unobserve747_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands759 */ +static ANTLR3_BITWORD FOLLOW_print_in_other_commands759_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands759 = { FOLLOW_print_in_other_commands759_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print769 */ +static ANTLR3_BITWORD FOLLOW_PRINT_in_print769_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print769 = { FOLLOW_PRINT_in_print769_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print771 */ +static ANTLR3_BITWORD FOLLOW_ID_in_print771_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_print771 = { FOLLOW_ID_in_print771_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print773 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_print773_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print773 = { FOLLOW_group_elements_in_print773_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number792 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number792_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number792 = { FOLLOW_INT_in_number792_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number805 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_number805_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number805 = { FOLLOW_MINUS_in_number805_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number807 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number807_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number807 = { FOLLOW_INT_in_number807_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements825 */ +static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements825_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements825 = { FOLLOW_GROUP_in_group_elements825_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements827 */ +static ANTLR3_BITWORD FOLLOW_ID_in_group_elements827_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements827 = { FOLLOW_ID_in_group_elements827_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID838 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID838_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID838 = { FOLLOW_ID_in_numbered_ID838_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID844 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID844_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID844 = { FOLLOW_ID_in_numbered_ID844_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID846 */ +static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID846_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID846 = { FOLLOW_INT_in_numbered_ID846_bits, 1 }; @@ -820,7 +820,7 @@ * DFA tables for the parser */ /** Static dfa state tables for Cyclic dfa: - * 159:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); + * 156:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); */ static const ANTLR3_INT32 dfa24_eot[15] = { @@ -899,7 +899,7 @@ = { 24, /* Decision number of this dfa */ /* Which decision this represents: */ - (const pANTLR3_UCHAR)"159:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq );", + (const pANTLR3_UCHAR)"156:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq );", (CDFA_SPECIAL_FUNC) antlr3dfaspecialStateTransition, /* Default special state transition function */ antlr3dfaspecialTransition, /* DFA specialTransition is currently just a default function in the runtime */ antlr3dfapredict, /* DFA simulator function is in the runtime */ @@ -3447,7 +3447,7 @@ { (SCOPE_TOP(constraints))->dist= antlr3StackNew(ANTLR3_SIZE_HINT); - static int j = 1; + int j = 1; (SCOPE_TOP(constraints))->dist->push( (SCOPE_TOP(constraints))->dist, &j, NULL); if(DEBUG) { printf("-->%d : %d\n", *(int*) (SCOPE_TOP(constraints))->dist->peek( (SCOPE_TOP(constraints))->dist), (SCOPE_TOP(constraints))->dist->size( (SCOPE_TOP(constraints))->dist)); @@ -3867,9 +3867,6 @@ _first_0 = NULL; - - int num = 0; - EQ_OP48 = NULL; additiveExpression49.tree = NULL; @@ -3882,8 +3879,8 @@ retval.tree = NULL; { - // /Users/bion/projects/iordache/translator/pncompactor.g:98:5: ( ^( EQ_OP additiveExpression additiveExpression ) ) - // /Users/bion/projects/iordache/translator/pncompactor.g:98:9: ^( EQ_OP additiveExpression additiveExpression ) + // /Users/bion/projects/iordache/translator/pncompactor.g:95:5: ( ^( EQ_OP additiveExpression additiveExpression ) ) + // /Users/bion/projects/iordache/translator/pncompactor.g:95:9: ^( EQ_OP additiveExpression additiveExpression ) { root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); @@ -3894,7 +3891,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - EQ_OP48 = (pANTLR3_BASE_TREE) MATCHT(EQ_OP, &FOLLOW_EQ_OP_in_relationalExpression381); + EQ_OP48 = (pANTLR3_BASE_TREE) MATCHT(EQ_OP, &FOLLOW_EQ_OP_in_relationalExpression376); if (HASEXCEPTION()) { goto rulerelationalExpressionEx; @@ -3908,7 +3905,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression383); + FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression378); additiveExpression49=additiveExpression(ctx); FOLLOWPOP(); @@ -3922,7 +3919,7 @@ if(DEBUG) { printf("#######\n"); } } _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression387); + FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression382); additiveExpression50=additiveExpression(ctx); FOLLOWPOP(); @@ -3963,7 +3960,7 @@ /** * $ANTLR start additiveExpression - * /Users/bion/projects/iordache/translator/pncompactor.g:100:1: additiveExpression : ( primary[true] | ^( PLUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) -> ^( ADD[tok, \"+\"] $add1 $add2) | ^( MINUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) -> ^( SUB[tok, \"-\"] $add1 $add2) ); + * /Users/bion/projects/iordache/translator/pncompactor.g:97:1: additiveExpression : ( primary[true] | ^( PLUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) -> ^( ADD[tok, \"+\"] $add1 $add2) | ^( MINUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) -> ^( SUB[tok, \"-\"] $add1 $add2) ); */ static pncompactor_additiveExpression_return additiveExpression(ppncompactor ctx) @@ -4007,7 +4004,7 @@ bool flipped = false; - static int i; + int i; pANTLR3_COMMON_TOKEN tok; PLUS52 = NULL; @@ -4033,7 +4030,7 @@ retval.tree = NULL; { { - // /Users/bion/projects/iordache/translator/pncompactor.g:106:5: ( primary[true] | ^( PLUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) -> ^( ADD[tok, \"+\"] $add1 $add2) | ^( MINUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) -> ^( SUB[tok, \"-\"] $add1 $add2) ) + // /Users/bion/projects/iordache/translator/pncompactor.g:103:5: ( primary[true] | ^( PLUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) -> ^( ADD[tok, \"+\"] $add1 $add2) | ^( MINUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) -> ^( SUB[tok, \"-\"] $add1 $add2) ) ANTLR3_UINT32 alt23; @@ -4147,12 +4144,12 @@ switch (alt23) { case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:106:9: primary[true] + // /Users/bion/projects/iordache/translator/pncompactor.g:103:9: primary[true] { root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_primary_in_additiveExpression408); + FOLLOWPUSH(FOLLOW_primary_in_additiveExpression403); primary51=primary(ctx, true); FOLLOWPOP(); @@ -4166,7 +4163,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pncompactor.g:107:7: ^( PLUS add1= additiveExpression add2= additiveExpression ) + // /Users/bion/projects/iordache/translator/pncompactor.g:104:7: ^( PLUS add1= additiveExpression add2= additiveExpression ) { _last = (pANTLR3_BASE_TREE)LT(1); { @@ -4175,7 +4172,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - PLUS52 = (pANTLR3_BASE_TREE) MATCHT(PLUS, &FOLLOW_PLUS_in_additiveExpression418); + PLUS52 = (pANTLR3_BASE_TREE) MATCHT(PLUS, &FOLLOW_PLUS_in_additiveExpression413); if (HASEXCEPTION()) { goto ruleadditiveExpressionEx; @@ -4187,7 +4184,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression422); + FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression417); add1=additiveExpression(ctx); FOLLOWPOP(); @@ -4210,7 +4207,7 @@ } _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression439); + FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression434); add2=additiveExpression(ctx); FOLLOWPOP(); @@ -4243,27 +4240,27 @@ /* AST REWRITE - * elements : add2, add1, add2, add1 + * elements : add1, add1, add2, add2 * token labels : - * rule labels : add1, add2, retval + * rule labels : add2, add1, retval * token list labels : * rule list labels : */ { - pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add1; pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add2; + pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add1; pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval; - stream_add1=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add1", add1.tree != NULL ? add1.tree : NULL); stream_add2=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add2", add2.tree != NULL ? add2.tree : NULL); + stream_add1=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add1", add1.tree != NULL ? add1.tree : NULL); stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL); root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); retval.tree = root_0; - // 131:9: -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) + // 128:9: -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) if (flipped) { - // /Users/bion/projects/iordache/translator/pncompactor.g:131:23: ^( SUB[tok, \"-\"] $add1 $add2) + // /Users/bion/projects/iordache/translator/pncompactor.g:128:23: ^( SUB[tok, \"-\"] $add1 $add2) { pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, @@ -4281,9 +4278,9 @@ } } - else // 132:7: -> ^( ADD[tok, \"+\"] $add1 $add2) + else // 129:7: -> ^( ADD[tok, \"+\"] $add1 $add2) { - // /Users/bion/projects/iordache/translator/pncompactor.g:132:14: ^( ADD[tok, \"+\"] $add1 $add2) + // /Users/bion/projects/iordache/translator/pncompactor.g:129:14: ^( ADD[tok, \"+\"] $add1 $add2) { pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, @@ -4303,8 +4300,8 @@ } retval.tree = root_0; // set result root - if (stream_add1 != NULL) stream_add1->free(stream_add1); if (stream_add2 != NULL) stream_add2->free(stream_add2); + if (stream_add1 != NULL) stream_add1->free(stream_add1); if (stream_retval != NULL) stream_retval->free(stream_retval); @@ -4312,7 +4309,7 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pncompactor.g:133:7: ^( MINUS add1= additiveExpression add2= additiveExpression ) + // /Users/bion/projects/iordache/translator/pncompactor.g:130:7: ^( MINUS add1= additiveExpression add2= additiveExpression ) { _last = (pANTLR3_BASE_TREE)LT(1); { @@ -4321,7 +4318,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - MINUS53 = (pANTLR3_BASE_TREE) MATCHT(MINUS, &FOLLOW_MINUS_in_additiveExpression489); + MINUS53 = (pANTLR3_BASE_TREE) MATCHT(MINUS, &FOLLOW_MINUS_in_additiveExpression484); if (HASEXCEPTION()) { goto ruleadditiveExpressionEx; @@ -4333,7 +4330,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression493); + FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression488); add1=additiveExpression(ctx); FOLLOWPOP(); @@ -4356,7 +4353,7 @@ } _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression509); + FOLLOWPUSH(FOLLOW_additiveExpression_in_additiveExpression504); add2=additiveExpression(ctx); FOLLOWPOP(); @@ -4406,10 +4403,10 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); retval.tree = root_0; - // 157:9: -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) + // 154:9: -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) if (flipped) { - // /Users/bion/projects/iordache/translator/pncompactor.g:157:23: ^( ADD[tok, \"+\"] $add1 $add2) + // /Users/bion/projects/iordache/translator/pncompactor.g:154:23: ^( ADD[tok, \"+\"] $add1 $add2) { pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, @@ -4427,9 +4424,9 @@ } } - else // 158:7: -> ^( SUB[tok, \"-\"] $add1 $add2) + else // 155:7: -> ^( SUB[tok, \"-\"] $add1 $add2) { - // /Users/bion/projects/iordache/translator/pncompactor.g:158:14: ^( SUB[tok, \"-\"] $add1 $add2) + // /Users/bion/projects/iordache/translator/pncompactor.g:155:14: ^( SUB[tok, \"-\"] $add1 $add2) { pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, @@ -4485,7 +4482,7 @@ /** * $ANTLR start primary - * /Users/bion/projects/iordache/translator/pncompactor.g:159:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); + * /Users/bion/projects/iordache/translator/pncompactor.g:156:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); */ static pncompactor_primary_return primary(ppncompactor ctx, bool enableAlt) @@ -4549,10 +4546,10 @@ _first_0 = NULL; - static int i; - static char* newVal; + int i; + char* newVal; pANTLR3_COMMON_TOKEN tok; - static char* newVal2; + char* newVal2; pANTLR3_COMMON_TOKEN tok2; MINUS54 = NULL; @@ -4594,7 +4591,7 @@ retval.tree = NULL; { { - // /Users/bion/projects/iordache/translator/pncompactor.g:167:5: ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ) + // /Users/bion/projects/iordache/translator/pncompactor.g:164:5: ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ) ANTLR3_UINT32 alt24; @@ -4609,7 +4606,7 @@ switch (alt24) { case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:167:9: ^( MINUS eq ) + // /Users/bion/projects/iordache/translator/pncompactor.g:164:9: ^( MINUS eq ) { _last = (pANTLR3_BASE_TREE)LT(1); { @@ -4618,7 +4615,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - MINUS54 = (pANTLR3_BASE_TREE) MATCHT(MINUS, &FOLLOW_MINUS_in_primary570); + MINUS54 = (pANTLR3_BASE_TREE) MATCHT(MINUS, &FOLLOW_MINUS_in_primary565); if (HASEXCEPTION()) { goto ruleprimaryEx; @@ -4639,7 +4636,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_eq_in_primary574); + FOLLOWPUSH(FOLLOW_eq_in_primary569); eq55=eq(ctx); FOLLOWPOP(); @@ -4680,7 +4677,7 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); retval.tree = root_0; - // 181:9: -> eq + // 178:9: -> eq { ADAPTOR->addChild(ADAPTOR, root_0, stream_eq == NULL ? NULL : stream_eq->nextTree(stream_eq)); @@ -4694,10 +4691,10 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pncompactor.g:182:7: group_elements + // /Users/bion/projects/iordache/translator/pncompactor.g:179:7: group_elements { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_group_elements_in_primary589); + FOLLOWPUSH(FOLLOW_group_elements_in_primary584); group_elements56=group_elements(ctx); FOLLOWPOP(); @@ -4735,15 +4732,15 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); retval.tree = root_0; - // 191:8: -> {!enableAlt || i == 1}? group_elements + // 188:8: -> {!enableAlt || i == 1}? group_elements if (!enableAlt || i == 1) { ADAPTOR->addChild(ADAPTOR, root_0, stream_group_elements == NULL ? NULL : stream_group_elements->nextTree(stream_group_elements)); } - else // 192:8: -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) + else // 189:8: -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) { - // /Users/bion/projects/iordache/translator/pncompactor.g:192:17: ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) + // /Users/bion/projects/iordache/translator/pncompactor.g:189:17: ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) { pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, @@ -4776,12 +4773,12 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pncompactor.g:193:7: number + // /Users/bion/projects/iordache/translator/pncompactor.g:190:7: number { root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_number_in_primary630); + FOLLOWPUSH(FOLLOW_number_in_primary625); number57=number(ctx); FOLLOWPOP(); @@ -4800,7 +4797,7 @@ } break; case 4: - // /Users/bion/projects/iordache/translator/pncompactor.g:196:7: ^( MULT number primary[false] ) + // /Users/bion/projects/iordache/translator/pncompactor.g:193:7: ^( MULT number primary[false] ) { _last = (pANTLR3_BASE_TREE)LT(1); { @@ -4809,7 +4806,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - MULT58 = (pANTLR3_BASE_TREE) MATCHT(MULT, &FOLLOW_MULT_in_primary641); + MULT58 = (pANTLR3_BASE_TREE) MATCHT(MULT, &FOLLOW_MULT_in_primary636); if (HASEXCEPTION()) { goto ruleprimaryEx; @@ -4821,7 +4818,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_number_in_primary643); + FOLLOWPUSH(FOLLOW_number_in_primary638); number59=number(ctx); FOLLOWPOP(); @@ -4832,7 +4829,7 @@ CREATE_stream_number; stream_number->add(stream_number, number59.tree, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_primary_in_primary645); + FOLLOWPUSH(FOLLOW_primary_in_primary640); primary60=primary(ctx, false); FOLLOWPOP(); @@ -4849,7 +4846,7 @@ /* AST REWRITE - * elements : MULT, primary, number + * elements : primary, MULT, number * token labels : * rule labels : retval * token list labels : @@ -4862,14 +4859,14 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); retval.tree = root_0; - // 196:37: -> {$number.value == 0}? + // 193:37: -> {$number.value == 0}? if (number59.value == 0) { root_0 = NULL; /* <-- rewriteEmptyAlt()) */ } - else // 197:14: -> ^( MULT number primary ) + else // 194:14: -> ^( MULT number primary ) { - // /Users/bion/projects/iordache/translator/pncompactor.g:197:17: ^( MULT number primary ) + // /Users/bion/projects/iordache/translator/pncompactor.g:194:17: ^( MULT number primary ) { pANTLR3_BASE_TREE root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->becomeRoot(ADAPTOR, stream_MULT->nextNode(stream_MULT), root_1)); @@ -4890,7 +4887,7 @@ } break; case 5: - // /Users/bion/projects/iordache/translator/pncompactor.g:198:4: ^( MULT number eq ) + // /Users/bion/projects/iordache/translator/pncompactor.g:195:4: ^( MULT number eq ) { _last = (pANTLR3_BASE_TREE)LT(1); { @@ -4899,7 +4896,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - MULT61 = (pANTLR3_BASE_TREE) MATCHT(MULT, &FOLLOW_MULT_in_primary680); + MULT61 = (pANTLR3_BASE_TREE) MATCHT(MULT, &FOLLOW_MULT_in_primary675); if (HASEXCEPTION()) { goto ruleprimaryEx; @@ -4911,7 +4908,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_number_in_primary682); + FOLLOWPUSH(FOLLOW_number_in_primary677); number62=number(ctx); FOLLOWPOP(); @@ -4931,7 +4928,7 @@ } _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_eq_in_primary686); + FOLLOWPUSH(FOLLOW_eq_in_primary681); eq63=eq(ctx); FOLLOWPOP(); @@ -4972,12 +4969,12 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); retval.tree = root_0; - // 212:6: -> {i == 0}? + // 209:6: -> {i == 0}? if (i == 0) { root_0 = NULL; /* <-- rewriteEmptyAlt()) */ } - else // 213:4: -> eq + else // 210:4: -> eq { ADAPTOR->addChild(ADAPTOR, root_0, stream_eq == NULL ? NULL : stream_eq->nextTree(stream_eq)); @@ -5021,7 +5018,7 @@ /** * $ANTLR start live_def - * /Users/bion/projects/iordache/translator/pncompactor.g:214:1: live_def : ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ); + * /Users/bion/projects/iordache/translator/pncompactor.g:211:1: live_def : ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ); */ static pncompactor_live_def_return live_def(ppncompactor ctx) @@ -5073,7 +5070,7 @@ retval.tree = NULL; { { - // /Users/bion/projects/iordache/translator/pncompactor.g:215:2: ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pncompactor.g:212:2: ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ) ANTLR3_UINT32 alt27; @@ -5144,7 +5141,7 @@ switch (alt27) { case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:215:4: ^( LIVE ALL ( ID )* ) + // /Users/bion/projects/iordache/translator/pncompactor.g:212:4: ^( LIVE ALL ( ID )* ) { root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); @@ -5155,7 +5152,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - LIVE64 = (pANTLR3_BASE_TREE) MATCHT(LIVE, &FOLLOW_LIVE_in_live_def710); + LIVE64 = (pANTLR3_BASE_TREE) MATCHT(LIVE, &FOLLOW_LIVE_in_live_def705); if (HASEXCEPTION()) { goto rulelive_defEx; @@ -5169,7 +5166,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - ALL65 = (pANTLR3_BASE_TREE) MATCHT(ALL, &FOLLOW_ALL_in_live_def712); + ALL65 = (pANTLR3_BASE_TREE) MATCHT(ALL, &FOLLOW_ALL_in_live_def707); if (HASEXCEPTION()) { goto rulelive_defEx; @@ -5178,7 +5175,7 @@ ALL65_tree = (pANTLR3_BASE_TREE)ADAPTOR->dupNode(ADAPTOR, ALL65);ADAPTOR->addChild(ADAPTOR, root_1, ALL65_tree); - // /Users/bion/projects/iordache/translator/pncompactor.g:215:15: ( ID )* + // /Users/bion/projects/iordache/translator/pncompactor.g:212:15: ( ID )* for (;;) { @@ -5196,10 +5193,10 @@ switch (alt25) { case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:215:15: ID + // /Users/bion/projects/iordache/translator/pncompactor.g:212:15... [truncated message content] |
From: <Ste...@us...> - 2009-06-26 16:29:37
|
Revision: 104 http://pntool.svn.sourceforge.net/pntool/?rev=104&view=rev Author: StephenCamp Date: 2009-06-26 16:29:32 +0000 (Fri, 26 Jun 2009) Log Message: ----------- Fixed chkcons, ilpadm, reduce, and corresponding test routines to use global is_verbose(). Cleaned up comment flow (for printing, viewing) in most source files. Corrected/extended some comments. Added acnt.c/test-actn.c. These compile BUT HAVE NOT BEEN TESTED/DEBUGGED YET. Will be tested/debugged by the end of today. Modified Paths: -------------- spnbox/MemoryManager.h spnbox/chkcons.c spnbox/ilpadm.c spnbox/ipsolve.c spnbox/isadm.c spnbox/linenf.c spnbox/matrixmath.c spnbox/matrixmath.h spnbox/msplit.c spnbox/pn2acpn.c spnbox/pn2eacpn.c spnbox/reduce.c spnbox/spnbox.h spnbox/supervis.c spnbox/tests/test-ilpadm.c spnbox/tests/test-reduce.c Added Paths: ----------- spnbox/actn.c spnbox/tests/test-actn.c Modified: spnbox/MemoryManager.h =================================================================== --- spnbox/MemoryManager.h 2009-06-26 04:57:11 UTC (rev 103) +++ spnbox/MemoryManager.h 2009-06-26 16:29:32 UTC (rev 104) @@ -1,28 +1,53 @@ -#ifndef MEMORYMANAGER_H -#define MEMORYMANAGER_H - -#include "../pnheaders/general.h" -#include "../pnheaders/matrix.h" - -typedef struct MemoryManager -{ - void** memory; - int length; - int next; - int addressblock; - - matrix** matrices; - int lengthm; - int nextm; - int addressblockm; -} MemoryManager; - -inline void ManageMatrix(MemoryManager* mgr, matrix* m); -inline void ManageMemory(MemoryManager* mgr, void* mem); -inline void* mmalloc(MemoryManager* mgr, size_t nbytes); -inline void* mcalloc(MemoryManager* mgr, size_t n, size_t nbytes); -inline void MAllocateMatrixType(MemoryManager* mgr, int type, matrix* m, int rows, int cols); -void FreeMemory(MemoryManager* mgr); -MemoryManager CreateMemoryManager(int InitialLength, int InitialMatrices, int AddressBlockSize, int MatrixAddressBlockSize); - -#endif +#ifndef MEMORYMANAGER_H +#define MEMORYMANAGER_H + +#include "../pnheaders/general.h" +#include "../pnheaders/matrix.h" + +/*The MemoryManager structure is used to store information about dynamically +allocated memory so that it can be freed when appropriate. It stores lists +of pointers to ordinary memory blocks and pointers to matrices.*/ +typedef struct MemoryManager +{ + void** memory; + int length; + int next; + int addressblock; + + matrix** matrices; + int lengthm; + int nextm; + int addressblockm; +} MemoryManager; + + +/*ManageMatrix adds a matrix to the list of matrices to free later.*/ +inline void ManageMatrix(MemoryManager* mgr, matrix* m); + +/*ManageMemory adds a block of memory to the list of blocks to be freed later.*/ +inline void ManageMemory(MemoryManager* mgr, void* mem); + +/*mmalloc allocates a block of memory and adds it to the lists.*/ +inline void* mmalloc(MemoryManager* mgr, size_t nbytes); + +/*mcalloc allocates a block of memory for an array and adds to the lists.*/ +inline void* mcalloc(MemoryManager* mgr, size_t n, size_t nbytes); + +/*MAllocateMatrixType is exactly like AllocateMatrixType except that it adds +the newly-allocated matrix to the list of matrices to be freed later.*/ +inline void MAllocateMatrixType(MemoryManager* mgr, int type, matrix* m, int rows, int cols); + +/*FreeMemory frees the memory blocks and matrices listed by a memory manager.*/ +void FreeMemory(MemoryManager* mgr); + +/*CreateMemoryManager initializes a memory manager structure. InitialLength +and InitialMatrices are the initial sizes of the lists that hold memory block +and matrix addresses, respectively. Both these parameters must be at least 1 and +will be set to 1 automatically if passed as less than that. +AddressBlockSize and MatrixAddressBlockSize are the number of additional +addresses that memory will be allocated for each time the list of memory block +addresses or matrix addresses respectively become full. These must be at least +five and will be set to five automatically if passed as less than that.*/ +MemoryManager CreateMemoryManager(int InitialLength, int InitialMatrices, int AddressBlockSize, int MatrixAddressBlockSize); + +#endif Added: spnbox/actn.c =================================================================== --- spnbox/actn.c (rev 0) +++ spnbox/actn.c 2009-06-26 16:29:32 UTC (rev 104) @@ -0,0 +1,404 @@ +#include <stdlib.h> +#include "../pnheaders/matrix.h" +#include "matrixmath.h" +#include "MemoryManager.h" +#include "spnbox.h" + +static int CheckParams(matrix* Dm, matrix* Dp, int** X, int* XCount, matrix *Dcm, matrix *Dcp, int update); + +static int isUnique(matrix* D, int* cullTransition, int* X, int XCount); + +static actn_r BuildResult(matrix* Dm, matrix* Dp, int* cullPlace, int* cullTrans); + +static int* cullPlaces(matrix* Dm, int* cullTransition); + +static int* updateURT(matrix* Dm, matrix* Dp, matrix* Dcm, matrix* Dcp); + +static int CheckParams(matrix* Dm, matrix* Dp, int** X, int* XCount, matrix *Dcm, matrix *Dcp, int update); + +actn_r actn(matrix* Dm, matrix* Dp, int* X, int XCount, matrix *Dcm, matrix *Dcp, int update) +{ + actn_r result; + nltrans_r nltransResult; + MemoryManager memory; + matrix D; /*The incidence matrix*/ + int *cullTransition; /*An array of flags, one for each transition, set if it + should be culled (is unraisable)*/ + int *cullPlace; /*An array of flags, one for each place, set if the place + should be culled.*/ + + /*Initialize the error return value*/ + memset(&result, 0, sizeof(actn_r)); + + /*Initialize the memory manager*/ + memory = CreateMemoryManager(5, 5, 0, 0); + + /*Check the parameters.*/ + if (! CheckParams(Dm, Dp, &X, &XCount, Dcm, Dcp, update)) return result; + + /*Get the incidence matrix - we'll need it later.*/ + D = SubtractMatrix(Dp, Dm, (matrix*) 2); + ManageMatrix(&memory, &D); + + if (update) + { + /*If we are in update mode, use the updateURT function to get the + unraisable transitions.*/ + cullTransition = updateURT(Dm, Dp, Dcm, Dcp); + } + else + { + /*Otherwise, use nltrans to get the list of unraisable transitions.*/ + nltransResult = nltrans(&D, X, XCount); + if (! (nltransResult.dtrCount)) + { + /*If the call failed, fail.*/ + FreeMemory(&memory); + merror(0, "ACTN: nltrans call failed"); + return result; + } + else + { + cullTransition = nltransResult.dtr; + } + } + ManageMemory(&memory, cullTransition); + + /*Build the cullPlace flags, which will be cleared only for places that + have nonzero output arcs to transitions that are not being culled.*/ + cullPlace = cullPlaces(Dm, cullTransition); + ManageMemory(&memory, cullPlace); + + /*Build the final output.*/ + result = BuildResult(Dm, Dp, cullPlace, cullTransition); + + /*Do an isUnique test.*/ + result.unique = isUnique(&D, cullTransition, X, XCount); + + /*Clean up.*/ + FreeMemory(&memory); + + return result; +} + +int isUnique(matrix* D, int* cullTransition, int* X, int XCount) +{ + /*We will be doing a linear programming problem for each raisable (non-culled) + transition. The constraint matrix will be the subset of D having only the + columns corresponding to non-culled transitions, with a row of 1s concatenated + onto the bottom, and the column corresponding to whichever transition is + currently being tested removed (or in this case, zeroed).*/ + matrix Dx, dx; + int i, j, Transitions = 0; + double* B; + short int *IntList; + ipsolve_r result; + + /*Count the number of transitions we'll need.*/ + for (i = 0; i < NumberOfColumns(*D); i++) + { + if (! cullTransition[i]) Transitions++; + } + + /*Build Dx*/ + AllocateMatrixType(2, &Dx, NumberOfRows(*D) + 1, Transitions); + j = 0; + for (i = 0; i < NumberOfColumns(*D); i++) + { + if (! cullTransition[i]) + { + /*Fill in the last row.*/ + SetMatrixEl(&Dx, NumberOfRows(*D), j, 1); + /*Fill in the other rows*/ + CopyBlock(NumberOfRows(*D), 1, D, 0, i, &Dx, 0, j++); + } + } + /*Allocate space to record the values of the current column while it is + zeroed.*/ + AllocateMatrixType(1, &dx, NumberOfRows(*D) + 1, 1); + CopyBlock(NumberOfRows(*D), 1, D, 0, 0, &Dx, 0, 0); + + /*Build B. It is all zeroes except for a 1 in the last element.*/ + B = tcalloc(NumberOfRows(*D) + 1, sizeof(double)); + B[NumberOfRows(Dx)] = 1; + + /*IntList needs to be all zeroes to override the default of all 1s.*/ + IntList = tcalloc(Transitions, sizeof(short int)); + + /*Iterate through each transition*/ + for (i = 1; i < Transitions; i++) + { + /*Zero a column of Dx and store it temporarily in dx for later restoration*/ + for (j = 0; j <= NumberOfRows(*D); j++) + { + //Restore the previous transition. + SetMatrixEl(&Dx, j, i - 1, GetMatrixEl(&dx, j, 0)); + //Copy the current transition + SetMatrixEl(&dx, j, 0, GetMatrixEl(&Dx, j, i)); + //Zero the current transition. + SetMatrixEl(&Dx, j, i, 0); + } + //ipsolve_r ipsolve(matrix* L, double* B, double* f, short int *IntList, double *ub, double *lb, short int *ctype); + result = ipsolve(&Dx, B, 0, IntList, 0, 0, 0); + + /*If we get a valid solution, then free memory and return false.*/ + if (! strcmp(result.mhow, HOW_OK)) + { + free(IntList); + free(B); + DeallocateMatrix(&Dx); + DeallocateMatrix(&dx); + return 0; + } + } + //If we get through all transition without returning false, return true. + free(IntList); + free(B); + DeallocateMatrix(&Dx); + DeallocateMatrix(&dx); + return 1; +} + +actn_r BuildResult(matrix* Dm, matrix* Dp, int* cullPlace, int* cullTrans) +{ + int Places = 0, Transitions = 0, i, j, k, l; + actn_r result; + + /*All matrices are zeroed initially.*/ + memset(&result, 0, sizeof(actn_r)); + + /*Count the number of places and transitions that are going to be left after + culling.*/ + for (i = 0; i < NumberOfRows(*Dm); i++) + { + if (! cullPlace[i]) Places++; + } + for (i = 0; i < NumberOfColumns(*Dm); i++) + { + if (! cullTrans[i]) Transitions++; + } + + /*Allocate space. Dma/Dmp are the same size as the original matrices but + contain only elements in non-culled rows and columns. Dmra/Dpra contain only + non-culled rows and columns. TA holds the indices of kept transitions.*/ + if (Places && Transitions) + { + AllocateMatrixType(2, &result.Dmra, Places, Transitions); + AllocateMatrixType(2, &result.Dpra, Places, Transitions); + } + AllocateMatrixType(2, &result.Dma, NumberOfRows(*Dm), NumberOfColumns(*Dm)); + AllocateMatrixType(2, &result.Dpa, NumberOfRows(*Dm), NumberOfColumns(*Dm)); + result.TA = tcalloc(Transitions, sizeof(int)); + result.TACount = Transitions; + /*Do the copy. k and l indicate the row and column numbers in the Dmra/Dpra + matrices. Fill in TA while we're at it.*/ + k = 0; + l = 0; + for (j = 0; j < NumberOfColumns(*Dm); i++) + { + if (cullTrans[j]) continue; + for (i = 0; i < NumberOfPlaces(*Dm); i++) + { + if (cullPlace[i]) continue; + SetMatrixEl(&result.Dma, i, j, GetMatrixEl(Dm, i, j)); + SetMatrixEl(&result.Dpa, i, j, GetMatrixEl(Dp, i, j)); + SetMatrixEl(&result.Dmra, k, l, GetMatrixEl(Dm, i, j)); + SetMatrixEl(&result.Dpra, k, l, GetMatrixEl(Dp, i, j)); + k++; + } + result.TA[l] = j; + l++; + } + return result; +} + +int* cullPlaces(matrix* Dm, int* cullTransition) +{ + int i, j; + int *cull; + /*Allocate and initialize the return value cull. It will be clear only for + places that have nonzero output arcs to transitions that are not being + culled.*/ + cull = tcalloc(NumberOfRows(*Dm), sizeof(int)); + for (i = 0; i < NumberOfRows(*Dm); i++) + { + /*Look to see if the current place has any nonzero output arcs to + transitions not being culled.*/ + for (j = 0; j < NumberOfColumns(*Dm); j++) + { + if (GetMatrixEl(Dm, i, j) && (! cullTransition[j])) + { + break; + } + } + /*If there were no nonzero output arcs set the place flag.*/ + if (j == NumberOfColumns(*Dm)) + { + cull[i] = 1; + } + } + return cull; +} + +int* updateURT(matrix* Dm, matrix* Dp, matrix* Dcm, matrix* Dcp) +{ + /*This function builds a list of unraisable transitions in Dm/Dp by examining + Dcm/Dcp.*/ + int Places, Transitions, SubPlaces, SubTransitions, i, j, keepGoing; + /*These are each flag arrays set to indicate live places or transitions at + various times throughout the algorithm.*/ + int *URT, *Trans = 0, *Place = 0; + + Places = NumberOfRows(*Dm); + Transitions = NumberOfColumns(*Dm); + SubPlaces = NumberOfRows(*Dcm); + SubTransitions = NumberOfColumns(*Dcm); + + /*URT is the return value. It has a flag for each transition.*/ + URT = tcalloc(Transitions, sizeof(int)); + /*Trans and Place both have flags only for each of the possible new + transitions or places that can be added.*/ + if (Places - SubPlaces) + { + Place = tcalloc(Places - SubPlaces, sizeof(int)); + } + if (Transitions - SubTransitions) + { + Trans = tcalloc(Transitions - SubTransitions, sizeof(int)); + } + + /*URT is a flag vector with an element for each transition. It is initially + cleared only for non-null columns of Dcm/Dcp, where column numbers in Dcm/Dcp + map to the same column numbers in Dm/Dp. Trans defaults to its logic inverse.*/ + for (i = 0; i < SubTransitions; i++) + { + /*See if the current column of Dcm/Dcp is non-null.*/ + for (j = 0; j < SubPlaces; j++) + { + if (GetMatrixEl(Dcm, j, i) || GetMatrixEl(Dcp, j, i)) + { + break; + } + } + /*If it was null, set the URT flag. If it was not, set the Trans flag.*/ + if (j == SubPlaces) + { + URT[i] = 1; + } + else + { + Trans[i] = 1; + } + } + /*Fill the additional elements of URT, the ones not taken care of above.*/ + for (i = SubTransitions; i < Transitions; i++) + { + URT[i] = 1; + } + + /*Now, we loop.*/ + do + { + /*The place flag should be set for any place (in Dm/Dp beyond those mapped + to by Dcm/Dcp) such that the place has at least one nonzero output arc to + a transition that is flagged in the current transition list. It should + be cleared for every other place*/ + memset(Place, 0, sizeof(int) * (Places - SubPlaces)); + for (i = SubPlaces; i < Places; i++) + { + /*Check to see if the current place has at least one nonzero output arc + to a transition flagged in the current transition list.*/ + for (j = SubTransitions; j < Transitions; j++) + { + if (Trans[j - SubTransitions] && GetMatrixEl(Dm, i, j)) + { + /*If it does, set the flag and break out of the test loop.*/ + Place[i - SubPlaces] = 1; + break; + } + } + } + /*Similarly, the transition flag should be set for any transition in Dm/Dp + beyond those mapped to by Dcm/Dcp such that the transition has at least one + nonzero input arc to a place that is flagged in the current place list. + Additionally, we clear every flag of URT that corresponds to a + transition whose flag is set in Trans. Finally, the overall loop will + continue only until Trans is entirely empty. Set the keepGoing flag + if any element of Trans is set.*/ + keepGoing = 0; + memset(Trans, 0, sizeof(int) * (Transitions - SubTransitions)); + for (j = SubTransitions; j < Transitions; j++) + { + for (i = SubPlaces; i < Places; i++) + { + if (Place[i - SubPlaces] && GetMatrixEl(Dp, i, j)) + { + Trans[j - SubTransitions] = 1; + /*Clear the appropriate URT flag.*/ + URT[j] = 0; + /*Set the keepGoing flag.*/ + keepGoing = 1; + break; + } + } + } + } while (keepGoing); + /*Free memory*/ + if (Place) free(Place); + if (Trans) free(Trans); + /*Return*/ + return URT; +} + +int CheckParams(matrix* Dm, matrix* Dp, int** X, int* XCount, matrix *Dcm, matrix *Dcp, int update) +{ + int Rows0, Cols0, Rows1, Cols1; + /*Dm and Dp are required and must be the same size.*/ + if (! (Dm && Dp)) + { + merror(0, "ACTN: Dm or Dp was not given"); + return 0; + } + Rows0 = NumberOfRows(*Dm); + Cols0 = NumberOfColumns(*Dm); + if (Rows0 != NumberOfRows(*Dp) || Cols0 != NumberOfColumns(*Dp)) + { + merror(0, "ACTN: The dimensions of Dm and Dp do not match"); + return 0; + } + + /*X is not required. Make sure that XCount is zero if X is null and vice- + versa.*/ + if (! *X) + { + *XCount = 0; + } + else if (! *XCount) + { + *X = 0; + } + + /*If update is nonzero, Dcm and Dcp are required. They cannot be larger than + Dm/Dp in either dimension and they must be the same size.*/ + if (update) + { + if (! (Dcm && Dcp)) + { + merror(0, "ACTN: Dcm or Dcp was not given while update was nonzero"); + return 0; + } + Rows1 = NumberOfRows(*Dcm); + Cols1 = NumberOfColumns(*Dcm); + if (NumberOfRows(*Dcp) != Rows1 || NumberOfColumns(*Dcp) != Cols1) + { + merror(0, "ACTN: Dcm and Dcp are not the same size"); + return 0; + } + if (Rows1 > Rows0 || Cols1 > Cols0) + { + merror(0, "ACTN: Dcm and Dcp are larger than Dm and Dp"); + return 0; + } + } + return 1; +} Modified: spnbox/chkcons.c =================================================================== --- spnbox/chkcons.c 2009-06-26 04:57:11 UTC (rev 103) +++ spnbox/chkcons.c 2009-06-26 16:29:32 UTC (rev 104) @@ -28,7 +28,7 @@ /*If verbosity is high enough print a period to indicate that an ipsolve call is beginning.*/ - if (is_verbose() >= VRB_CHKCONS_IPSOLVE) + if (is_verbose() >= VRB_CHKCONS) { printf(".\n"); } Modified: spnbox/ilpadm.c =================================================================== --- spnbox/ilpadm.c 2009-06-26 04:57:11 UTC (rev 103) +++ spnbox/ilpadm.c 2009-06-26 16:29:32 UTC (rev 104) @@ -1,12 +1,13 @@ #include <string.h> #include "spnbox.h" #include "../pnheaders/matrix.h" +#include "../pnheaders/pns.h" #include "matrixmath.h" #include "MemoryManager.h" -static void disp(char* beginning, char* parameter, char* end, int i, int p, int verbose); +static void disp(char* beginning, char* parameter, char* end, int i, int p); -ilpadm_r ilpadm(matrix* L, int* b, matrix* D, int TucCount, int* Tuc, int TuoCount, int* Tuo, int* m0, int verbose) +ilpadm_r ilpadm(matrix* L, int* b, matrix* D, int TucCount, int* Tuc, int TuoCount, int* Tuo, int* m0) { /*The parameters to return.*/ ilpadm_r Return; @@ -15,16 +16,16 @@ ipsolve_r IntegerSolution; /*Variables. L is a constraint matrix. - L has as many columns as there are places in the Petri net represented by D, that is, as - many columns as D has rows. + L has as many columns as there are places in the Petri net represented by D, + that is, as many columns as D has rows. L has as many rows as there are constraints. - D is the incidence matrix of a Petri net. It has as many rows as there are places and as - many columns as there are transitions. - ConstraintDeltas is a matrix of the change in constraint-met state (negative means more met, - 0 just met, positive means less met) that will occur when uncontrollable or unobservable - transitions fire. Each row holds all the deltas for a specific constraint, and each column - holds all the deltas for a specific transition. - unobservable transitions.*/ + D is the incidence matrix of a Petri net. It has as many rows as there are + places and as many columns as there are transitions. + ConstraintDeltas is a matrix of the change in constraint-met state (negative + means more met, 0 just met, positive means less met) that will occur when + uncontrollable or unobservable transitions fire. Each row holds all the deltas + for a specific constraint, and each column holds all the deltas for a specific + transition*/ int Constraints, Places, Transitions; matrix ConstraintDeltasUCT, ConstraintDeltasUOT; @@ -34,11 +35,11 @@ matrix ConstraintsMet; matrix Marking0; - /*The constraint matrices M1 & 2 , constraint vector N1 & 2, constraint type vector - ConstraintType1 & 2, and lower bounds LoBounds that will be used for the integer - programming problem when developing the transform. 2 is identical to one in all cases - except it has an extra constraint row. Which one we need is determined per loop - iteration.*/ + /*The constraint matrices M1 & 2 , constraint vector N1 & 2, constraint type + vector ConstraintType1 & 2, and lower bounds LoBounds that will be used for + the linear programming problem when developing the transform. 2 is identical + to one in all cases except it has an extra constraint row. Which one we need + is determined per loop iteration.*/ double *N1, *N2, *LoBounds, *Cost; short *ConstraintType1, *ConstraintType2; matrix M1, M2; @@ -54,9 +55,9 @@ Return.how = HOW_ERROR; Return.dhow = 0; - /*Check the parameters. Fail if any required parameters have not been given and fill in - defaults for any nonrequired parameters. L and D are required and at least one of Tuc or - Tuo is required. All other parameters are optional.*/ + /*Check the parameters. Fail if any required parameters have not been given + and fill in defaults for any nonrequired parameters. L and D are required and + at least one of Tuc or Tuo is required. All other parameters are optional.*/ if (! (L && D)) { merror(0, "ilpadm: Required parameters were null pointers"); @@ -65,15 +66,16 @@ Constraints = NumberOfRows(*L); Places = NumberOfColumns(*L); Transitions = NumberOfColumns(*D); - /*L must have the same number of columns as D does rows, since both of those dimensions - correspond to the number of places being constrained.*/ + /*L must have the same number of columns as D does rows, since both of those + dimensions correspond to the number of places being constrained.*/ if (Places != NumberOfRows(*D)) { merror(0, "ilpadm: L does not have the same number of columns as D does rows"); return Return; } - /*At least one of Tuc or Tuo must be provided. If not, there is no transformation to - perform, since there are no unobservable or uncontrollable transitions.*/ + /*At least one of Tuc or Tuo must be provided. If not, there is no + transformation to perform, since there are no unobservable or uncontrollable + transitions.*/ if (!( Tuc || Tuo)) { merror(0, "ilpadm: Both Tuc and Tuo are null pointers"); @@ -84,7 +86,7 @@ /*If we make it past the tests, then the how message defaults to OK.*/ Return.how = HOW_OK; - if(verbose) + if(is_verbose() >= VRB_ILPADM) { printf("\n"); } @@ -99,18 +101,19 @@ ConstraintType1 = mcalloc(&memory, (TucCount + TuoCount), sizeof(short)); ConstraintType2 = mcalloc(&memory, (TucCount + TuoCount + 1), sizeof(short)); - /*Allocate space for R1. It will be added to the constraint matrix, so it should have a - row for each constraint and a column for each place, just like the original constraint - matrix.*/ + /*Allocate space for R1. It will be added to the constraint matrix, so it + should have a row for each constraint and a column for each place, just like + the original constraint matrix.*/ AllocateMatrixType(2, &Return.R1, Constraints, Places); - /*Allocate space for R2. It will be a square matrix with the same number of rows and - columns as L has rows.*/ + /*Allocate space for R2. It will be a square matrix with the same number of + rows and columns as L has rows.*/ AllocateMatrixType(2, &Return.R2, Constraints, Constraints); - /*If there are uncontrollable transitions, Tuc is an array of indexes to the columns in D - that contain them. Fill the first TucCount rows of M with these columns. Since we are - filling rows with columns, transpose M1 and M2 and transpose them again after this block. - Also, initialize the constraint types, constraint vectors, and so forth.*/ + /*If there are uncontrollable transitions, Tuc is an array of indexes to the + columns in D that contain them. Fill the first TucCount rows of M with these + columns. Since we are filling rows with columns, transpose M1 and M2 and + transpose them again after this block. Also, initialize the constraint types, + constraint vectors, and so forth.*/ TransposeMatrix(&M1); TransposeMatrix(&M2); if(Tuc) @@ -119,20 +122,21 @@ for (i = 0; i < TucCount; i++) { - /*Each integer problem constraint corresponding to an uncontrollable transition - is a <= type.*/ + /*Each integer problem constraint corresponding to an uncontrollable + transition is a <= type.*/ ConstraintType1[i] = -1; ConstraintType2[i] = -1; - /*Copy a single column, index Tuc[i], from D to the appropriate row of M1 and M2.*/ + /*Copy a single column, index Tuc[i], from D to the appropriate row of M1 + and M2.*/ CopyBlock(Places, 1, D, 0, Tuc[i], &M1, 0, i); CopyBlock(Places, 1, D, 0, Tuc[i], &M2, 0, i); - /*We need a record of the changes to constraint-met state that occur for each of the - uncontrollable and unobservable transitions. This corresponds to the matrix - product of L * an incidence matrix containing only those transitions. - We cannot use a regular matrix product because we just want to multiply by one - column of D. We take the matrix product by loop.*/ + /*We need a record of the changes to constraint-met state that occur for + each of the uncontrollable and unobservable transitions. This corresponds + to the matrix product of L * an incidence matrix containing only those + transitions. We cannot use a regular matrix product because we just want + to multiply by one column of D. We take the matrix product by loop.*/ for (j = 0; j < Constraints; j++) { x = 0; @@ -154,17 +158,18 @@ MAllocateMatrixType(&memory, 2, &ConstraintDeltasUOT, Constraints, TuoCount); for (i = 0; i < TuoCount; i++) { - /*The constraint types corresponding to unobservable transitions are =. They - default to this. No need to change.*/ - /*Copy a single column, index Tuo[i], from D to the appropriate row of M1 and M2.*/ + /*The constraint types corresponding to unobservable transitions are =. + They default to this. No need to change.*/ + /*Copy a single column, index Tuo[i], from D to the appropriate row of M1 + and M2.*/ CopyBlock(Places, 1, D, 0, Tuo[i], &M1, 0, i + TucCount); CopyBlock(Places, 1, D, 0, Tuo[i], &M2, 0, i + TucCount); - /*We need a record of the changes to constraint-met state that occur for each of the - uncontrollable and unobservable transitions. This corresponds to the matrix - product of L * an incidence matrix containing only those transitions. - We cannot use a regular matrix product because we just want to multiply by one - column of D. We take the matrix product by loop.*/ + /*We need a record of the changes to constraint-met state that occur for + each of the uncontrollable and unobservable transitions. This corresponds + to the matrix product of L * an incidence matrix containing only those + transitions. We cannot use a regular matrix product because we just want + to multiply by one column of D. We take the matrix product by loop.*/ for (j = 0; j < Constraints; j++) { x = 0; @@ -182,7 +187,8 @@ } //The last constraint type 2 is another <= ConstraintType2[TucCount + TuoCount] = -1; - /*N1 is all zeros - no change necessary. N2 is all zeros except for the last element.*/ + /*N1 is all zeros - no change necessary. N2 is all zeros except for the last + element.*/ N2[TucCount + TuoCount] = -1; /*LoBounds all zeros except the last one*/ LoBounds[Places] = 1; @@ -191,14 +197,16 @@ TransposeMatrix(&M1); TransposeMatrix(&M2); - /*We'll need a matrix form of the initial marking, as a column vector. Build it now.*/ + /*We'll need a matrix form of the initial marking, as a column vector. Build + it now.*/ if (m0) { Marking0 = vector2matrix(m0, Places, 1); ManageMatrix(&memory, &Marking0); } - /* Pre-allocate space for the array of messages corresponding to the status of each row.*/ + /* Pre-allocate space for the array of messages corresponding to the status of + each row.*/ Return.dhow = tcalloc(Constraints, sizeof(char*)); for (i = 0; i < Constraints; i++) @@ -207,17 +215,19 @@ Return.dhow[i] = HOW_OK; - /*UCTDeltasNegative if the current constraint is such that there are no uncontrollable - transitions the firing of which will ever cause it to change from met to unmet. Set the - UOTDeltasZero if the current constraint is such that there are no unobservable - transitions the firing of which will affect the constraint-met state at all. Both of - these flags get set if there are no appropriate transitions at all. Each column of the - incidence matrix corresponds to the change in marking that will occur if the corresponding - transition fires. So, a constraint row times an incidence column yields a single number - that will be negative if the transition firing causes the constraint to become more met, - positive if it causes it to become less met, and 0 if it does not affect the state of the - constraint. Each element of the ConstraintDeltas matrices represents such a multiplication. - Rows are constraints and columns are transitions.*/ + /*UCTDeltasNegative if the current constraint is such that there are no + uncontrollable transitions the firing of which will ever cause it to change + from met to unmet. Set the UOTDeltasZero if the current constraint is such + that there are no unobservable transitions the firing of which will affect + the constraint-met state at all. Both of these flags get set if there are no + appropriate transitions at all. Each column of the incidence matrix + corresponds to the change in marking that will occur if the corresponding + transition fires. So, a constraint row times an incidence column yields a + single number that will be negative if the transition firing causes the + constraint to become more met, positive if it causes it to become less met, + and 0 if it does not affect the state of the constraint. Each element of the + ConstraintDeltas matrices represents such a multiplication. Rows are + constraints and columns are transitions.*/ UCTDeltasNegative = 1; UOTDeltasZero = 1; for (j = 0; j < TucCount; j++) @@ -238,34 +248,38 @@ } /*See what action is necessary.*/ - /*First, check whether a transformation is feasible given the initial marking and - marking constraint vector (if they have been given)*/ + /*First, check whether a transformation is feasible given the initial + marking and marking constraint vector (if they have been given)*/ if (m0 && b ? MultiplyVector(L, &Marking0, i, 0, 0) > b[i] : 0) { Return.dhow[i] = HOW_INFEASIBLE; - disp("The transformation is infeasible due to the initial marking", "", ".", i, Constraints, verbose); + disp("The transformation is infeasible due to the initial marking", "", ".", i, Constraints); } - /*Otherwise, if the current constraint row is such that the firing of no unobservable - transition will change its met state and no uncontrollable transition will ever cause - it to become unmet, then no transformation is necessary.*/ + /*Otherwise, if the current constraint row is such that the firing of no + unobservable transition will change its met state and no uncontrollable + transition will ever cause it to become unmet, then no transformation is + necessary.*/ else if(UCTDeltasNegative && UOTDeltasZero) { Return.dhow[i] = HOW_OK; - disp("No transformation is necessary", "", ".", i, Constraints, verbose); - /*Copy the original marking constraint row, untransformed. Do so by leaving this row - of R1 all zeros and making this element along R2's diagonal equal to 1.*/ + disp("No transformation is necessary", "", ".", i, Constraints); + /*Copy the original marking constraint row, untransformed. Do so by + leaving this row of R1 all zeros and making this element along R2's + diagonal equal to 1.*/ SetMatrixEl(&Return.R2, i, i, 1); } else { - /*Otherwise, transformation is necessary. If there is an initial marking vector, the - constraint we are about to solve for will have to be met by it.*/ + /*Otherwise, transformation is necessary. If there is an initial marking + vector, the constraint we are about to solve for will have to be met by + it.*/ if(m0 && b) { - /*Build the last column of the constraint vector (not counting the extra row). Each - element should be the change in current constraint satisfaction that - occurs when the transition corresponding to the current row is fired. These values - can be found in the products found earlier.*/ + /*Build the last column of the constraint matrix (not counting the extra + row). Each element should be the change in current constraint + satisfaction that occurs when the transition corresponding to the + current row is fired. These values can be found in the products found + earlier.*/ for (j = 0; j < TucCount; j++) { SetMatrixEl(&M2, j, Places, GetMatrixEl(&ConstraintDeltasUCT, i, j)); @@ -274,8 +288,8 @@ { SetMatrixEl(&M2, j + TucCount, Places, GetMatrixEl(&ConstraintDeltasUOT, i, j)); } - /*Build the cost vector and the last row of the constraint matrix. They begin with - the initial marking.*/ + /*Build the cost vector and the last row of the constraint matrix. They + begin with the initial marking.*/ for (j = 0; j < Places; j++) { /*The last row of the M2 constraint vector begins with the the initial @@ -283,21 +297,22 @@ SetMatrixEl(&M2, TucCount + TuoCount, j, m0[j]); Cost[j] = m0[j]; } - /*The cost vector and the last constraint of the integer problem both end with this - number*/ + /*The cost vector and the last constraint of the integer problem both + end with this number*/ Cost[Places] = MultiplyVector(L, &Marking0, i, 0, 0) - b[i] - 1; SetMatrixEl(&M2, TucCount + TuoCount, Places, Cost[Places]); /*Solve the integer problem. ipsolve syntax is: - ipsolve_r ipsolve(matrix* L, double* B, double* f, short int *IntList, double *ub, - double *lb, short int *ctype);*/ + ipsolve_r ipsolve(matrix* L, double* B, double* f, short int *IntList, + double *ub, double *lb, short int *ctype);*/ IntegerSolution = ipsolve(&M2, N2, Cost, 0, 0, LoBounds, ConstraintType2); Return.dhow[i] = IntegerSolution.mhow; } else { - /*If there was no initial marking vector, than it does not come into play as a - constraint in the integer problem. Build the last column of the constraint vector.*/ + /*If there was no initial marking vector, than it does not come into + play as a constraint in the integer problem. Build the last column of + the constraint vector.*/ for (j = 0; j < TucCount; j++) { SetMatrixEl(&M1, j, Places, GetMatrixEl(&ConstraintDeltasUCT, i, j)); @@ -313,8 +328,9 @@ } /*Solve the integer problem.*/ IntegerSolution = ipsolve(&M1, N1, Cost, 0, 0, LoBounds, ConstraintType1); - /*We want to run a check. If b is nonempty and if the algorithm below results in the - setting of the flag, we will have to modify the problem slightly and re-solve.*/ + /*We want to run a check. If b is nonempty and if the algorithm below + results in the setting of the flag, we will have to modify the problem + slightly and re-solve.*/ if (IntegerSolution.res && b) { flag = 1; @@ -328,12 +344,13 @@ } if (flag && b[i] <= -1) { - /*We resolve the integer problem, but with one additional constraint. Its - coefficients are are a row of -1s followed by the inverse sum of all elements in - the current constraint vector row and its constant is a 1. Constraint type should - be set to greater than. N2 and ConstraintType2 are already set up this way. We - just need to fill the last row of M2 with the appropriate numbers and put in - the numbers we calculated above for the last column of M2.*/ + /*We resolve the integer problem, but with one additional + constraint. Its coefficients are are a row of -1s followed by the + inverse sum of all elements in the current constraint vector row and + its constant is a 1. Constraint type should be set to greater than. + N2 and ConstraintType2 are already set up this way. We just need to + fill the last row of M2 with the appropriate numbers and put in the + numbers we calculated above for the last column of M2.*/ k = 0; for(j = 0; j < Places; j++) { @@ -364,12 +381,12 @@ } } } - /*When we get here, IntegerSolution.res contains whatever solution we are going to - get. Copy it into the appropriate places.*/ + /*When we get here, IntegerSolution.res contains whatever solution we are + going to get. Copy it into the appropriate places.*/ if (IntegerSolution.res) { - /*The last element of the solution gets copied to the current element in the main - diagonal of R2.*/ + /*The last element of the solution gets copied to the current element in + the main diagonal of R2.*/ SetMatrixEl(&Return.R2, i, i, IntegerSolution.res[Places]); //The rest of the solution gets copied to the current row of R1. for(j = 0; j < Places; j++) @@ -381,16 +398,16 @@ IntegerSolution.res = 0; } - /*If we are in verbose mode and the status is anything other than OK, we want to show - so.*/ + /*If we are in verbose mode and the status is anything other than OK, we + want to show so.*/ if(strcmp(IntegerSolution.mhow, HOW_OK)) { - disp("The problem is ", IntegerSolution.mhow, ".", i, Constraints, verbose); + disp("The problem is ", IntegerSolution.mhow, ".", i, Constraints); } } } - /*Check for unsolved or infeasible solutions. The overall message should prioritize to - reporting infeasibilities, then report unsolved problems.*/ + /*Check for unsolved or infeasible solutions. The overall message should + prioritize to reporting infeasibilities, then report unsolved problems.*/ for(i = 0; i < Places; i++) { if(Return.dhow[i] == HOW_INFEASIBLE) @@ -404,8 +421,9 @@ } } /*Get La according to formula: La = R1 + R2 * L*/ - /*Because R2 is a diagonal matrix, we can optimize things slightly here by manually multiplying - and examining only the diagonal, and then manually adding.*/ + /*Because R2 is a diagonal matrix, we can optimize things slightly here by + manually multiplying and examining only the diagonal, and then manually + adding.*/ AllocateMatrixType(2, &Return.La, Constraints, Places); for (i = 0; i < Constraints; i++) { @@ -415,9 +433,9 @@ SetMatrixEl(&Return.La, i, j, (GetMatrixEl(&Return.R2, i, i) * GetMatrixEl(L, i, j)) + GetMatrixEl(&Return.R1, i, j)); } } - /*If b is available, get ba according to algorithm: ba = (R2 * a column vector made of the - elements of b + 1), each element then less 1. Do this with a loop rather than matrix - operations.*/ + /*If b is available, get ba according to algorithm: ba = (R2 * a column vector + made of the elements of b + 1), each element then less 1. Do this with a loop + rather than matrix operations.*/ if(b) { Return.ba = tcalloc(Constraints, sizeof(int)); @@ -431,9 +449,9 @@ return Return; } -void disp(char* beginning, char* parameter, char* end, int i, int p, int verbose) +void disp(char* beginning, char* parameter, char* end, int i, int p) { - if(verbose) + if(is_verbose() >= VRB_ILPADM) { if(p <= 1) { Modified: spnbox/ipsolve.c =================================================================== --- spnbox/ipsolve.c 2009-06-26 04:57:11 UTC (rev 103) +++ spnbox/ipsolve.c 2009-06-26 16:29:32 UTC (rev 104) @@ -9,9 +9,13 @@ L = a matrix. B = a vector. f = a vector, which I will call the cost vector. - intlist = a vector of logic entries with one element for each element of x (aka same number of elements as L has columns). All true elements mark where an element of x must be an integer. - ub, lb - vectors containing upper and lower bounds inclusive on each entry in x. Same number of elements as L has columns. I will call these HiBound and LoBound. - ctype - a vector each element of which is negative, zero, or positive. Same number of elements as L has columns. I will call this ConstraintType*/ + intlist = a vector of logic entries with one element for each element of x + (aka same number of elements as L has columns). All true elements mark where + an element of x must be an integer. ub, lb - vectors containing upper and + lower bounds inclusive on each entry in x. Same number of elements as L has + columns. I will call these HiBound and LoBound. ctype - a vector each element + of which is negative, zero, or positive. Same number of elements as L has + columns. I will call this ConstraintType*/ /*The structure that will be returned.*/ ipsolve_r Return; @@ -30,16 +34,21 @@ /*The result returned from ipslv*/ ipslv_r result; - /*Indicators of where bounds on x are +/- infinity. A logic 0 indicates a boundary at +/- infinity.*/ + /*Indicators of where bounds on x are +/- infinity. A logic 0 indicates a + boundary at +/- infinity.*/ int *HiBoundsFinite, *LoBoundsFinite; - /*Indicators of rows and columns that have been removed or altered, plus indices to which rows are not being skipped.*/ + /*Indicators of rows and columns that have been removed or altered, plus + indices to which rows are not being skipped.*/ int *RowKeys, *ColKeys; - /*The number of rows and columns in the original and in the final constraint matrix L. The number of columns of L corresponds to the number of elements in the solution vector.*/ + /*The number of rows and columns in the original and in the final constraint + matrix L. The number of columns of L corresponds to the number of elements in + the solution vector.*/ int LRows0, LCols0, LRows1 = 0, LCols1 = 0, LColsAdded = 0; - /*Initialize the Return structure to something we can return if we encounter an error.*/ + /*Initialize the Return structure to something we can return if we encounter + an error.*/ Return.mhow = HOW_ERROR; Return.res = 0; @@ -65,15 +74,18 @@ { B0 = mcalloc(&memory, LRows0, sizeof(double)); } - /*Setup the default arguments (whichever optional arguments are null pointers)*/ + /*Setup the default arguments (whichever optional arguments are null pointers) + */ if (! Cost0) { - /*Cost vector is not included. Default to all zeros. There is one element in the cost vector for each element in the solution vector.*/ + /*Cost vector is not included. Default to all zeros. There is one element in + the cost vector for each element in the solution vector.*/ Cost0 = mcalloc(&memory, LCols0, sizeof(double)); } if (! IntList0) { - /*IntList is not included. Default to all ones (all solution elements required to be integers)*/ + /*IntList is not included. Default to all ones (all solution elements + required to be integers)*/ IntList0 = mcalloc(&memory, LCols0, sizeof(short)); for (i = 0; i < LCols0; i++) { @@ -91,32 +103,39 @@ } if (! LoBound0) { - /*Lower bounds on x are not included. Default to zeros. There are as many lower bounds as there are values of x.*/ + /*Lower bounds on x are not included. Default to zeros. There are as many + lower bounds as there are values of x.*/ LoBound0 = mcalloc(&memory, LCols0, sizeof(double)); } if (! ConstraintType0) { - /*ConstraintType is not included. Defaults to all 1s(all constraints >=). There are as many constraint type entries - as there are rows of L, since each row of L generates one row in the product that is constrained.*/ + /*ConstraintType is not included. Defaults to all 1s(all constraints >=). + There are as many constraint type entries as there are rows of L, since each + row of L generates one row in the product that is constrained.*/ ConstraintType0 = mcalloc(&memory, LRows0, sizeof(short)); for (i = 0; i < LRows0; i++) { ConstraintType0[i] = 1; } } - /*Initialize the row and column keys. These will be filled with values by the first preprocessing loop to tell the second what to do with specific rows and columns. They default to zero, meaning remove row or column.*/ + /*Initialize the row and column keys. These will be filled with values by the + first preprocessing loop to tell the second what to do with specific rows and + columns. They default to zero, meaning remove row or column.*/ RowKeys = mcalloc(&memory, LRows0, sizeof(int)); ColKeys = mcalloc(&memory, LCols0, sizeof(int)); - /*Allocate the finite boundary logic elements. These will be initialized by the first preprocessing loop.*/ + /*Allocate the finite boundary logic elements. These will be initialized by + the first preprocessing loop.*/ HiBoundsFinite = mcalloc(&memory, LCols0, sizeof(int)); LoBoundsFinite = mcalloc(&memory, LCols0, sizeof(int)); - /*We need to set up a feasible solution, one which fits upper- and lower-boundary requirements, albeit while ignoring everything else. We do this during the column scan loop.*/ + /*We need to set up a feasible solution, one which fits upper- and + lower-boundary requirements, albeit while ignoring everything else. We do this + during the column scan loop.*/ Return.res = tcalloc(LCols0, sizeof(double)); - /*This is the column scan loop. We scan to see which columns are non-null and will be copied, build the feasible solution, and do a few other things - that need to be done by column.*/ + /*This is the column scan loop. We scan to see which columns are non-null and + will be copied, build the feasible solution, and do a few other things that need to be done by column.*/ for (j = 0; j < LCols0; j++) { /*Convert intlist to logic-only values.*/ @@ -124,7 +143,9 @@ { IntList0[j] = 1; } - /*Fill the finite bounds indicators with the appropriate value. We reserve a value of HiBound for positive infinity and a value of LoBound for negative infinity.*/ + /*Fill the finite bounds indicators with the appropriate value. We reserve a + value of HiBound for positive infinity and a value of LoBound for negative + infinity.*/ if(HiBound0[j] != INF) { HiBoundsFinite[j] = 1; @@ -146,7 +167,8 @@ /*If the column will be copied, we need to set up a feasible solution:*/ if(ColKeys[j]) { - /*If any upper bound is lower than a lower bound, no feasible solution exists.*/ + /*If any upper bound is lower than a lower bound, no feasible solution + exists.*/ if (HiBound0[j] < LoBound0[j] && HiBoundsFinite[j]) { Return.mhow = HOW_INFEASIBLE; @@ -156,24 +178,29 @@ Return.res = 0; return Return; } - /*If both the high and low bounds are negative or zero, the feasible solution should be the high bound.*/ + /*If both the high and low bounds are negative or zero, the feasible + solution should be the high bound.*/ else if (HiBound0[j] <= 0 && (LoBound0[j] < 0 || (! LoBoundsFinite[j]))) { Return.res[j] = HiBound0[j]; } - /*If the high bound is above zero and the low bound is below zero, the feasible solution will be a zero.*/ + /*If the high bound is above zero and the low bound is below zero, the + feasible solution will be a zero.*/ else if((HiBound0[j] >= 0 || (! HiBoundsFinite[j])) && (LoBound0[j] < 0 || (!LoBoundsFinite[j]))) { Return.res[j] = 0; } else { - /*Both upper and lower bounds are greater than 0 and the feasible solution can be set to the lower bound.*/ + /*Both upper and lower bounds are greater than 0 and the feasible + solution can be set to the lower bound.*/ Return.res[j] = LoBound0[j]; } } - /*If the column is going to be skipped because it is all zeros, then the corresponding variable does not contribute to the constraint equation, and - the cost vector and the bounds are the only constraints on the variable. It can be set by them.*/ + /*If the column is going to be skipped because it is all zeros, then the + corresponding variable does not contribute to the constraint equation, and + the cost vector and the bounds are the only constraints on the variable. It + can be set by them.*/ else { if(Cost0[j] < 0) @@ -187,7 +214,8 @@ } } - /*This is the row scan loop. We use it to scan which rows will be copied and do some more constraint checking.*/ + /*This is the row scan loop. We use it to scan which rows will be copied and + do some more constraint checking.*/ for (i = 0; i < LRows0; i++) { /*Check to make sure this row contains at least one nonzero entry.*/ @@ -202,8 +230,10 @@ } if (! RowKeys[i]) { - /*If the row is not being copied, it means that this row is empty. If a row is empty it cannot add up to anything but zero. Make sure the constraints allow this. - We must have not have a constraint for >= positive, <= negative, or = nonzero*/ + /*If the row is not being copied, it means that this row is empty. If a + row is empty it cannot add up to anything but zero. Make sure the + constraints allow this. We must have not have a constraint for >= + positive, <= negative, or = nonzero*/ if (((double)ConstraintType0[i]) * B0[i] > 0 || ((! ConstraintType0[i]) && B0[i])) { /*Constraints cannot be met. Notify the calling function and return.*/ @@ -225,7 +255,9 @@ Cost1 = mcalloc(&memory, LCols1, sizeof(REAL)); IntList1 = mcalloc(&memory, LCols1, sizeof(int)); - /*Column copy loop. Copy all the column-related paremeters (those related to specific solution variables). Use k to be the index in the destination arrays.*/ + /*Column copy loop. Copy all the column-related paremeters (those related to + specific solution variables). Use k to be the index in the destination + arrays.*/ k = 0; for (j = 0; j < LCols0; j++) { @@ -238,7 +270,8 @@ } } - /*Row copy loop. Copy all of the row-related parameters (those related to the constraint equations). Use k to be the index in the destination arrays.*/ + /*Row copy loop. Copy all of the row-related parameters (those related to the + constraint equations). Use k to be the index in the destination arrays.*/ k = 0; for (i = 0; i < LRows0; i++) { @@ -257,8 +290,10 @@ } } - /*If we have removed all rows or all columns, then there are no constraints imposed by the constraint matrix and we can go straight ahead to - checking the feasible solution we developed earlier. Otherwise, proceed with solving for the constraints imposed by the constraint matrix.*/ + /*If we have removed all rows or all columns, then there are no constraints + imposed by the constraint matrix and we can go straight ahead to checking the + feasible solution we developed earlier. Otherwise, proceed with solving for + the constraints imposed by the constraint matrix.*/ if(LRows1 && LCols1) { /*Allocate the storage for the matrix copy.*/ @@ -268,7 +303,8 @@ L1[i] = mcalloc(&memory, LCols1, sizeof(REAL)); } - /*The constraint matrix copy loop. Use i and j to represent indices within the source loop and k and l to represent indices in the destination loop.*/ + /*The constraint matrix copy loop. Use i and j to represent indices within + the source loop and k and l to represent indices in the destination loop.*/ k = 0; for (i = 0; i < LRows0; i++) { @@ -288,11 +324,14 @@ /*Solve: Syntax is: - ipslv(REAL* f, REAL** L, REAL* b, int m, int n, int* intlist, REAL* ub, REAL* lb, int* ctype);*/ + ipslv(REAL* f, REAL** L, REAL* b, int m, int n, int* intlist, REAL* ub, + REAL* lb, int* ctype);*/ result = ipslv(Cost1, L1, B1, LRows1, LCols1, IntList1, HiBound1, LoBound1, ConstraintType1); - /*If the result type is unbounded, it means that in trying to minimize the cost function the ipslv routine has returned an unbounded variable in the solution vector. - If this occurs, zero the cost function and get a feasible solution.*/ + /*If the result type is unbounded, it means that in trying to minimize the + cost function the ipslv routine has returned an unbounded variable in the ' + solution vector. If this occurs, zero the cost function and get a feasible + solution.*/ if (result.kind == 3) { for (i = 0; i < LCols1; i++) @@ -306,12 +345,14 @@ if (result.kind == 3 || result.kind == 0) { - /*Now we have a solution to the subset of variables that we actually solved for. Go back and map this into the complete solution vector.*/ + /*Now we have a solution to the subset of variables that we actually + solved for. Go back and map this into the complete solution vector.*/ for (i = 0, k = 0; i < LCols0; i++) { if(ColKeys[i]) { - /*If we get here, the column was used and there is a corresponding variable in the subset used with ipslv.*/ + /*If we get here, the column was used and there is a corresponding + variable in the subset used with ipslv.*/ Return.res[i] = result.solution[k++]; } } @@ -319,7 +360,8 @@ } else { - /*If we get here it means that we removed all rows or all columns. Set solution type to OK.*/ + /*If we get here it means that we removed all rows or all columns. Set + solution type to OK.*/ result.kind = 0; } @@ -340,7 +382,8 @@ break; } - /*If there are any infinities in the solution, set the result message to unbounded.*/ + /*If there are any infinities in the solution, set the result message to + unbounded.*/ for (i = 0; i < LRows0; i++) { if(Return.res[i] == INF) Modified: spnbox/isadm.c =================================================================== --- spnbox/isadm.c 2009-06-26 04:57:11 UTC (rev 103) +++ spnbox/isadm.c 2009-06-26 16:29:32 UTC (rev 104) @@ -2,13 +2,13 @@ #include "matrixmath.h" #include "MemoryManager.h" -/*CheckParam checks most of the parameters passed to isadm to make sure they are valid and -returns the number of constraints or zero for bad parameters. It displays all necessary -error messages if bad parameters are encountered.*/ +/*CheckParam checks most of the parameters passed to isadm to make sure they are +valid and returns the number of constraints or zero for bad parameters. It +displays all necessary error messages if bad parameters are encountered.*/ static int CheckParam(matrix* Dm, matrix* Dp, matrix* L, matrix* F, matrix* C); -/*StructuralAnalysis does the actual analysis to determine constraint admissibility. -It returns v as an array of integers.*/ +/*StructuralAnalysis does the actual analysis to determine constraint +admissibility. It returns v as an array of integers.*/ static int* StructuralAnalysis(matrix* D, matrix* L, matrix* F, matrix* C, int TucCount, int* Tuc, int TuoCount, int* Tuo); int* isadm(matrix* Dm, matrix* Dp, matrix* L, int* b, int* m0, matrix* F, matrix* C, int TucCount, int* Tuc, int TuoCount, int* Tuo) @@ -85,10 +85,11 @@ for (j = 0; j < TucCount + TucCount; j++) { Transition = j < TucCount ? Tuc[j] : Tuo[j - TucCount]; - /*Get ldm and ldp, quantities related to how much the firing of the transition will - change current constraint satisfaction. - ldm contains the amount by which constraint satisfaction decreases when transitions fire. - ldp contains the amount by which constraint satisfaction increases when transitions fire.*/ + /*Get ldm and ldp, quantities related to how much the firing of the + transition will change current constraint satisfaction. ldm contains the + amount by which constraint satisfaction decreases when transitions fire. + ldp contains the amount by which constraint satisfaction increases when + transitions fire.*/ ldm = MultiplyVector(L, D, i, Transition, 0) + GetMatrixEl(C, i, Transition); if (ldm < 0) { @@ -103,8 +104,9 @@ if (k - ldm > 0) ldp += (k - ldm); if (k > ldm) ldm = k; - /*For transitions which are uncontrollable, an inadmissible constraint is one which becomes - less satisfied if the transition fires (in other words, one for which ldm is nonzero)*/ + /*For transitions which are uncontrollable, an inadmissible constraint is + one which becomes less satisfied if the transition fires (in other words, + one for which ldm is nonzero)*/ if (j < TucCount) { if (ldm) @@ -113,9 +115,9 @@ break; } } - /*For transitions which are unobservable, an inadmissible constraint is one for which the - net satisfaction changes at all if the transition fires (in other words, one for which - ldm != ldp*/ + /*For transitions which are unobservable, an inadmissible constraint is + one for which the net satisfaction changes at all if the transition fires + (in other words, one for which ldm != ldp*/ else { if (ldm != ldp) Modified: spnbox/linenf.c =================================================================== --- spnbox/linenf.c 2009-06-26 04:57:11 UTC (rev 103) +++ spnbox/linenf.c 2009-06-26 16:29:32 UTC (rev 104) @@ -14,36 +14,42 @@ int* FColumns; } InitTransformedNet_r; -/*This function does some basic checking to make sure parameters are as they should be. -It returns the number of constraints or -1 in case any parameters are invalid.*/ +/*This function does some basic checking to make sure parameters are as they +should be. It returns the number of constraints or -1 in case any parameters are +invalid.*/ static int CheckParams(matrix* Dm, matrix* Dp, matrix* L, int* b, int* m0, matrix* F, matrix* C); -/*This function checks to see if the constraint row specified by Row is inadmissible. It returns -a logic 1 if the constraint is inadmissible and a 0 otherwise.*/ +/*This function checks to see if the constraint row specified by Row is +inadmissible. It returns a logic 1 if the constraint is inadmissible and a 0 +otherwise.*/ static int Inadmissible(int Row, matrix* D, matrix* L, matrix* F, matrix* C, int TucCount, int* Tuc, int TuoCount, int* Tuo); -/*InitTransformedNet counts how many rows and columns will need to be added to the i/o matrices of the -Petri net to account for the new constraints being added, alloces the space, and pre-copies the existing -i/o matrices into the appropriate places in the new ones.*/ +/*InitTransformedNet counts how many rows and columns will need to be added to +the i/o matrices of the Petri net to account for the new constraints being +added, alloces the space, and pre-copies the existing i/o matrices into the +appropriate places in the new ones.*/ static InitTransformedNet_r InitTransformedNet(int Row, MemoryManager* memory, matrix* Dm, matrix* Dp, matrix* OldDm, matrix* OldDp, matrix* F, matrix* C, int TucCount, int* Tuc); -/*TransformC2L transforms the C constraints into marking constraints which it adds to the current -marking constraint row. It adds new places to the Petri net for the new constraints to refer to, and -establishes a few transition/place links.*/ +/*TransformC2L transforms the C constraints into marking constraints which it +adds to the current marking constraint row. It adds new places to the Petri net +for the new constraints to refer to, and establishes a few transition/place +links.*/ static void TransformC2L(int Row, matrix* C, matrix* LRow, matrix* Dp, int FirstDRow); -/*TransformF2L transforms the F constraints into marking constraints which it adds to the current -marking constraint row. It adds new places to the Petri net for the new constraints to refer to, and -establishes a few transition/place links.*/ +/*TransformF2L transforms the F constraints into marking constraints which it +adds to the current marking constraint row. It adds new places to the Petri net +for the new constraints to refer to, and establishes a few transition/place +links.*/ static void TransformF2L(int Row, matrix* F, matrix* LRow, matrix* Dm, matrix* Dp, int TucCount, int* Tuc, int StartRow, int StartCol); -/*FindInSet returns the index of the integer find in the array pointed to by set. -If find is not found, -1 is returned.*/ +/*FindInSet returns the index of the integer... [truncated message content] |
From: <ee...@us...> - 2009-06-26 04:57:13
|
Revision: 103 http://pntool.svn.sourceforge.net/pntool/?rev=103&view=rev Author: eegs002 Date: 2009-06-26 04:57:11 +0000 (Fri, 26 Jun 2009) Log Message: ----------- Added hash table and fixed messaging to provide character reservation-id Modified Paths: -------------- codegen/src/plantCompiler.c codegen/src/plantCompiler.h Modified: codegen/src/plantCompiler.c =================================================================== --- codegen/src/plantCompiler.c 2009-06-26 04:44:39 UTC (rev 102) +++ codegen/src/plantCompiler.c 2009-06-26 04:57:11 UTC (rev 103) @@ -70,6 +70,8 @@ createMain(plantFile); + initMutexLocks(plantFile); + createPNSCode(pnsPlant, plantFile); createLblArrays(pnsPlant, plantFile); @@ -88,24 +90,8 @@ //This must be called once the written main is complete since it //changes the position indicator to the end of the file - genEnabledFunction(pnsPlant, plantFile); + generateFunctions(pnsPlant, plantFile); - fprintf(plantFile,"\n#ifndef PIPES\n"); - - genHandlerFunction(plantFile); - - genSigWaitFunction(plantFile); - - fprintf(plantFile,"\n#else\n"); - - genPipesWaitFunction(plantFile); - - fprintf(plantFile,"\n#endif\n"); - - genUpdateFunction(plantFile); - - genGotoCurrentMark(plantFile); - fclose(plantFile); }//End compileSinglePlant @@ -143,7 +129,7 @@ void createMain(FILE* plantFile) { - fprintf(plantFile,"\nint main(int argc, char* argv[]){\n"); + fprintf(plantFile,"\n\nint main(int argc, char* argv[]){\n"); //DEBUG statements fprintf(plantFile,"\t#ifdef DEBUG\n"); @@ -165,6 +151,8 @@ fprintf(plantFile,"#include <stdlib.h>\n"); fprintf(plantFile,"#include <string.h>\n"); fprintf(plantFile,"#include <pthread.h>\n"); + fprintf(plantFile,"#include <limits.h>\n"); + //fprintf(plantFile,"#include \"plantResources.h\"\n"); }//End createIncludes @@ -216,6 +204,14 @@ fprintf(plantFile,"#define MAX_MESSAGE_SIZE 200\n"); fprintf(plantFile,"\n//Restricts plant to 50 digit long place numbers max\n"); fprintf(plantFile,"#define MAX_PLACE_DIGITS 50\n"); + fprintf(plantFile,"#define MAX_RESERVATIONS CHAR_MAX\n"); + + fprintf(plantFile,"\n//Arrary of Resrvations, index corresponding"\ + "to ID, value is 0 if ID is free, 1 if ID is in use\n"); + fprintf(plantFile,"int ___reservations[MAX_RESERVATIONS];\n"); + fprintf(plantFile,"\n//Mutex Lock associated to changing the state"\ + " of a reservation id\n"); + fprintf(plantFile,"pthread_mutex_t ___res_lock;\n"); }//End createGlobals @@ -295,8 +291,13 @@ fprintf(plantFile,"#endif\n"); }//End createSignalVars +//Initializes Mutex Locks +void initMutexLocks(FILE* plantFile) +{ + fprintf(plantFile,"\n//Initialize Mutex Locks\n"); + fprintf(plantFile,"pthread_mutex_init(&___res_lock,NULL);\n"); +} - //Generate the code to create the pns void createPNSCode(pns *pnsPlant, FILE* plantFile) { @@ -329,6 +330,8 @@ fprintf(plantFile,"}//End for\n"); fprintf(plantFile, "\nint ___placeOffset;\n"); + + fprintf(plantFile, "\ninitResArray();\n"); }//End createPNSCode @@ -528,6 +531,7 @@ "___currentMarking) == 1)\n",i); fprintf(plantFile,"\t{\n"); + //DEBUG statements fprintf(plantFile,"\t#ifdef DEBUG\n"); fprintf(plantFile,"\t\tprintf(\"\\nPLANT %%d: TRANS %d "\ @@ -535,6 +539,12 @@ fprintf(plantFile,"\t#endif\n"); + //Declare Reservation Variable + fprintf(plantFile,"\n\tint ___reservationID;\n"); + + fprintf(plantFile,"\n\t___reservationID = retrieveReservation();\n"); + + fprintf(plantFile,"\n\t#ifndef PIPES\n"); fprintf(plantFile,"\t//Set the int in sigval"\ " to the transition label\n"); @@ -550,14 +560,19 @@ fprintf(plantFile,"\t#else\n"); fprintf(plantFile,"\t//Alert the supervisor and wait for"\ " permission to fire\n"); - fprintf(plantFile,"\twaitForPermission((___pnsPlant.t[%d]).l,%d);\n",i,i); + fprintf(plantFile,"\twaitForPermission((___pnsPlant.t[%d]).l,"\ + "%d, ___reservationID);\n",i,i); fprintf(plantFile,"\t#endif\n"); fprintf(plantFile,"\n\t//Update the current marking\n"); fprintf(plantFile,"\tupdatePns(&___pnsPlant,%d,"\ "___currentMarking);\n",i); - fprintf(plantFile,"\tprintf(\"\\n___F%%d\\n\",pthread_self());\n"); - + fprintf(plantFile,"\tprintf(\"\\n___F%%d\\n\",___reservationID);\n"); + + fprintf(plantFile,"pthread_mutex_lock(&___res_lock);\n"); + fprintf(plantFile,"\n\t___reservations[___reservationID] = 0;\n"); + fprintf(plantFile,"pthread_mutex_unlock(&___res_lock);\n"); + fprintf(plantFile,"\n\tgoto CM;\n"); fprintf(plantFile,"\n\t} //End if(isEnabled)\n"); @@ -567,6 +582,31 @@ }//End genTransitionCode +//Generates all functions except main +void generateFunctions(pns* pnsPlant, FILE* plantFile) +{ + genEnabledFunction(pnsPlant, plantFile); + + fprintf(plantFile,"\n#ifndef PIPES\n"); + + genHandlerFunction(plantFile); + + genSigWaitFunction(plantFile); + + fprintf(plantFile,"\n#else\n"); + + genPipesWaitFunction(plantFile); + + fprintf(plantFile,"\n#endif\n"); + + genUpdateFunction(plantFile); + + genGotoCurrentMark(plantFile); + + genInitResArray(plantFile); + + genRetrieveRes(plantFile); +} @@ -777,7 +817,8 @@ fprintf(plantFile,"\n//Transition calls this function to wait"\ " for permission to fire from the supervisor\n"); fprintf(plantFile,"//PIPES VERSION\n"); - fprintf(plantFile,"void waitForPermission(int ___lblNbr, int ___transNbr)\n{\n"); + fprintf(plantFile,"void waitForPermission(int ___lblNbr,"\ + " int ___transNbr, int ___reservationID)\n{\n"); fprintf(plantFile,"\n\tchar ___buffer[MAX_MESSAGE_SIZE];\n"); @@ -792,7 +833,7 @@ //Alert the supervisor fprintf(plantFile,"\n\t//Alert the supervisor\n"); - fprintf(plantFile,"\tprintf(\"\\n___?%%d:%%d-%%d\\n\",pthread_self(),"\ + fprintf(plantFile,"\tprintf(\"\\n___?%%d:%%d-%%d\\n\",___reservationID,"\ "___lblNbr,___transNbr);\n"); //Suspend Until Response Received @@ -817,7 +858,7 @@ "\\n\",getpid());\n"); fprintf(plantFile,"\t\t#endif\n"); - fprintf(plantFile,"\t\tprintf(\"\\n___?%%d:%%d-%%d\\n\",pthread_self(),"\ + fprintf(plantFile,"\t\tprintf(\"\\n___?%%d:%%d-%%d\\n\",___reservationID,"\ "___lblNbr,___transNbr);\n"); fprintf(plantFile,"\t\tfgets(___buffer, MAX_MESSAGE_SIZE, stdin);\n"); fprintf(plantFile,"\t}//End while\n"); @@ -930,6 +971,59 @@ }//End genGotoInitMark +//Generates and outputs the code for the following function: + +// void initResArray(); + +// This function returns intializes all values of reservations array to 0 +void genInitResArray(FILE* plantFile) +{ + fprintf(plantFile,"\n//Initializes Reservation ID array\n"); + fprintf(plantFile,"\nvoid initResArray()\n{\n"); + fprintf(plantFile,"\tint counter = 0;\n"); + fprintf(plantFile,"\n\tfor(counter;counter<MAX_RESERVATIONS;counter++)\n"); + fprintf(plantFile,"\t{\n"); + fprintf(plantFile,"\t\t___reservations[counter] = 0;\n\t}//End for\n"); + fprintf(plantFile,"}//End initResArray"); +}//End genInitResArray + + + +//Generates and outputs the code for the following function: + +// int retrieveReservation(); + +//Returns the first available reservation id +void genRetrieveRes(FILE* plantFile) +{ + fprintf(plantFile,"\n//Returns the first available reservation id\n"); + fprintf(plantFile,"\nint retrieveReservation()\n{\n"); + fprintf(plantFile,"\tint counter = 0;\n"); + fprintf(plantFile,"\tint availableID = -1;\n"); + fprintf(plantFile,"\n\tpthread_mutex_lock(&___res_lock);\n"); + fprintf(plantFile,"\n\tfor(counter;counter<MAX_RESERVATIONS;counter++)\n"); + fprintf(plantFile,"\t{\n"); + fprintf(plantFile,"\t\tif(___reservations[counter] == 0)\n\t\t{\n"); + fprintf(plantFile,"\t\t\tavailableID = counter;\n"); + fprintf(plantFile,"\t\t\tbreak;\n\t\t}//End if\n"); + fprintf(plantFile,"\t}//End for\n"); + fprintf(plantFile,"\n\twhile(availableID == -1)\n\t{\n"); + fprintf(plantFile,"\t\tpthread_mutex_unlock(&___res_lock);\n"); + fprintf(plantFile,"\t\tsleep(1);\n"); + fprintf(plantFile,"\t\tpthread_mutex_lock(&___res_lock);\n"); + fprintf(plantFile,"\n\t\tfor(counter = 0;counter<MAX_RESERVATIONS;counter++)\n"); + fprintf(plantFile,"\t\t{\n"); + fprintf(plantFile,"\t\t\tif(___reservations[counter] == 0)\n\t\t\t{\n"); + fprintf(plantFile,"\t\t\t\t\tavailableID = counter;\n"); + fprintf(plantFile,"\t\t\t\tbreak;\n\t\t\t}//End if\n"); + fprintf(plantFile,"\t\t}//End for\n"); + fprintf(plantFile,"\t}//End while\n"); + fprintf(plantFile,"\n\t___reservations[availableID] = 1;\n"); + fprintf(plantFile,"\n\tpthread_mutex_unlock(&___res_lock);\n"); + fprintf(plantFile,"\treturn availableID;\n"); + fprintf(plantFile,"}//End retrieveReservation"); +}//End genRetrieveRes + //Outputs the function prototypes to plantFile void genFunctionPrototype(FILE* plantFile) { @@ -942,10 +1036,13 @@ "pid_t ___pidSup,union sigval *___sValPtr);\n"); fprintf(plantFile,"#else\n"); //fprintf(plantFile,"\t//PIPES DEFINITION\n"); - fprintf(plantFile,"\tvoid waitForPermission(int ___lblNbr,int ___transNbr);\n"); + fprintf(plantFile,"\tvoid waitForPermission(int ___lblNbr,"\ + "int ___transNbr, int ___reservationID);\n"); fprintf(plantFile,"#endif\n"); fprintf(plantFile,"\nvoid updatePns(pns *___pnsPtr,int ___cTnum,"\ " int *___currentMarking);\n"); fprintf(plantFile,"int gotoCurrentMark(pns *___pnsPtr,"\ " int *___currentMarking);\n"); + fprintf(plantFile,"void initResArray();\n"); + fprintf(plantFile,"int retrieveReservation();\n"); }//End genFunction Prototype Modified: codegen/src/plantCompiler.h =================================================================== --- codegen/src/plantCompiler.h 2009-06-26 04:44:39 UTC (rev 102) +++ codegen/src/plantCompiler.h 2009-06-26 04:57:11 UTC (rev 103) @@ -58,6 +58,10 @@ //Also initializes supervisor pid to 1st command line argument void createSignalVars(FILE* plantFile); + +//Initializes Mutex Locks +void initMutexLocks(FILE* plantFile); + //Generates the c code to create the pns //Outputs the generated code to the specified file //Uses petrNetSerializer to generate pns code @@ -129,6 +133,8 @@ // void genTransitionCode(pns *pnsPlant, FILE* plantFile); +//Generates all functions except main +void generateFunctions(pns* pnsPlant, FILE* plantFile); //Generates and outputs the code for the following function: @@ -198,7 +204,22 @@ void genGotoCurrentMark(FILE *plantFile); +//Generates and outputs the code for the following function: + +// void initResArray(); +// This function returns intializes all values of reservations array to 0 + + +void genInitResArray(FILE* plantFile); + +//Generates and outputs the code for the following function: + +// int retrieveReservation(); + +//Returns the first available reservation id +void genRetrieveRes(FILE* plantFile); + //Outputs the function prototypes to plantFile void genFunctionPrototype(FILE* plantFile); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mio...@us...> - 2009-06-26 04:44:41
|
Revision: 102 http://pntool.svn.sourceforge.net/pntool/?rev=102&view=rev Author: miordache Date: 2009-06-26 04:44:39 +0000 (Fri, 26 Jun 2009) Log Message: ----------- added new functions to pns.c, wrote a main function and a Makefile; see e-mail on 6/26 Modified Paths: -------------- pnheaders/pns.c pnheaders/pns.h Added Paths: ----------- Makefile pnheaders/main_function.c Added: Makefile =================================================================== --- Makefile (rev 0) +++ Makefile 2009-06-26 04:44:39 UTC (rev 102) @@ -0,0 +1,37 @@ +# This is the make file of the entire program. +# +# Modify it so that the files you contribute are properly included. +# I propose the following format (but you may change it if necessary). +# +# 1) Create a local make file in your directory. It should generate +# the object code. +# +# 2) Place all relevant object files and libraries in the same directory. +# +# 3) Place no other object files in that directory (or else please make +# appropriate changes below). +# +# Please make sure all commands can be run in Linux! +# +# If you make changes to this format, please document them above. + +COMPILER=gcc -g + +PNHEADERS=pnheaders +SPNBOX=spnbox +CODEGEN=codegen +TRANSLATOR=translator + +ct: objectfiles main_function.o + $(COMPILER) -o ct $(PNHEADERS)/*.o $(CODEGEN)/*.o $(SPNBOX)/*.o \ + $(TRANSLATOR)/*.o main_function.o + +objectfiles: + cd $(PNHEADERS); make +# cd $(CODEGEN); make +# cd $(SPNBOX); make +# cd $(TRANSLATOR); make + +main_function.o: $(PNHEADERS)/main_function.c $(PNHEADERS)/pns.h $(SPNBOX)/spnbox.h + $(COMPILER) -c $(PNHEADERS)/main_function.c -Ispnbox + Added: pnheaders/main_function.c =================================================================== --- pnheaders/main_function.c (rev 0) +++ pnheaders/main_function.c 2009-06-26 04:44:39 UTC (rev 102) @@ -0,0 +1,147 @@ +#include "pns.h" +#include "spnbox.h" + +int verb; + +int inline is_verbose() { return verb; } + +int main(int na, char* argv[]) { + + int i, j, l1, l2, UcCnt, UoCnt, *Tuc, *Tuo; + int labelcount = 0; + char* input; + FILE* f; + specs *sp; + syncc *snc; + pns pn, pnsv; + matrix L, C, H; + int *B; + + linenf_r lin_res; + + + verb = 0; + input = 0; + + if(na <= 1 || na > 3) { + printf("\nACTS--A Concurrency Tool Suite for concurrent programming and concurrent \nsystem design. This software is part of ongoing research to apply supervisory\ncontrol and related approaches to concurrency problems. While various \nsupervisory control tools should be implemented in the future, currently only\nmethods of the supervision based on place invariants are implemented. For \nmore information please refer to the documentation.\n\ +\nUsage: ct [-d<num>] file\ +\nOptions:\ +\n -d<num> Comment on execution progress. More information displayed for\ +\n high values of <num>.\ +\n\ +\nExamples: ct manf.sp\ +\n ct -d3 input.sp\n"); + + return 0; + } + + for(i = 1; i < na; i++) { + if(argv[i][0] == '-') { + switch(argv[i][1]) { + case 'd': verb = atoi("argv[i]+2"); + break; + default: fprintf(stderr, "Unknown option %s.\n", argv[i]); + } + } + else { + if(input) + fprintf(stderr, "Unexpected parameter %s.\n", argv[i]); + else + input = argv[i]; + } + } + + if(!input) { + fprintf(stderr, "No input file specified."); + return 0; + } + + f = fopen(input,"r"); + if(!f) + fprintf(stderr, "The file %s cannot be opened.\n", input); + else if(verb) + fprintf(stderr, "Using the input file %s ...\n", input); + fclose(f); + + // Call the translator + + sp = ScanInput(input); + if(!sp) // check translator result + return 1; + if(sp->process_num <= 0) { + fprintf(stderr, "No processes defined! Nothing to do.\n"); + dealloc_specs(sp); + return 0; + } + + // Label the PNs + + for(i = 0; i < sp->process_num; i++) + updatepn(sp->process_array[i]->pn, "freelabel", &labelcount); + + // Deal with synchronization constraints + + for(i = 1; i; ) /* i = 0 indicates when loop may end */ + for(i = 0, snc = sp->synclist; snc; snc = snc->next) { + l1 = snc->pn1->t[snc->t1].l; l2 = snc->pn2->t[snc->t2].l; + if(l1 != l2) { + i = 1; + j = (l1 > l2)?l1:l2; + snc->pn1->t[snc->t1].l = j; snc->pn2->t[snc->t2].l = j; + } + } + + // Obtain SC specification. Currently: + // extract the L, C, H, and b matrices (more complex specs to be done later) + + extractLCHB(sp, &pn, &L, &H, &C, &B); + + // Perform SC + + Tuc = tcalloc(pn.tnum, sizeof(*Tuc)); + Tuo = tcalloc(pn.tnum, sizeof(*Tuo)); + if(pn.t) + for(i = 0; i < pn.tnum; i++) { + Tuc[i] = pn.t[i].uncontrollable; + Tuo[i] = pn.t[i].unobservable; + } + + for(i = 0, UcCnt = 0, UoCnt = 0; i < pn.tnum; i++) { + UcCnt += Tuc[i]; + UoCnt += Tuo[i]; + } + + lin_res = linenf(&pn.out, &pn.in, &L, B, pn.marking, &H, &C, \ + UcCnt, Tuc, UoCnt, Tuo); + + free(Tuc); free(Tuo); + + // Check whether SC was successful + + if(strcmp(lin_res.how, "OK")) + merror(0, "MAIN FUNCTION: SC has failed. Relax the specification"); + + // Enforce liveness + + // no liveness enforcement at this time + + // Extract supervisor as a pn + + pnsv = getSupervisor(&pn, &lin_res.Dfm, &lin_res.Dfp, lin_res.ms0); + + deallocpn(&pn); + + // need functions to free linenf_r structures and similar structures + + // Generate code + + GenerateProgam(&pnsv, sp->name, sp->process_array, sp->process_num); + + dealloc(&pnsv); + + dealloc_specs(sp); + + return 0; +} + Modified: pnheaders/pns.c =================================================================== --- pnheaders/pns.c 2009-06-24 21:46:41 UTC (rev 101) +++ pnheaders/pns.c 2009-06-26 04:44:39 UTC (rev 102) @@ -425,7 +425,8 @@ tCheck(pn, sdest); /* also allocates pn->t, if necessary */ if(ip) for (i = 0; i < pn->tnum; i++) - pn->t[i].l = --*ip; + if(!pn->t[i].l) /* do not change existing labels */ + pn->t[i].l = --*ip; } else if(!strcmp(sdest,"Tuc")) { ip = va_arg(param, int*); @@ -1142,6 +1143,170 @@ } +/*************************************************************************** + EXTRACTLHCB +****************************************************************************/ + +/* This is a temporary implementation; future work should take in account that + sp can contain more general specifications */ + +/* The implementation assumes that each pn is free labeled and that no disjunctive + constraints are present. */ + +int find_var_index(variable* var, pns* pn, specs* sp) { + int i, k; + int lab; + + if(var->type == MARKINGV) { + if(var->index >= var->pn->pnum) + merror(0, "EXTRACTLHCB: index %d >= place number (%d)", var->index, var->pn->pnum); + for(i = 0, k = 0; i < sp->process_num; i++) { + if(var->pn == sp->process_array[i]->pn) + return var->index + k; + k += sp->process_array[i]->pn->pnum; + } + merror(0, "EXTRACTLHCB: Marking variable does not match specified PNs"); + } + else { + if(!var->pn->t) + merror(0, "EXTRACTLHCB expects labeled Petri nets"); + if(var->index >= var->pn->tnum) + merror(0, "EXTRACTLHCB: index %d >= tran. number (%d)", var->index, var->pn->tnum); + lab = var->pn->t[var->index].l; + for(i = 0; i < pn->tnum; i++) + if(pn->t[i].l == lab) + return i; + merror(0, "EXTRACTLHCB: Variable does not match specified PNs"); + } +} + +void extractLHCB(specs* sp, pns* pn, matrix* L, matrix* H, matrix* C, int** B) { + int i, j; + constraint *c; + pns *pn1; + int cnum; /* constraint number */ + variable* var; + inequality* in; + + /* Find the composed PN */ + + if(sp->process_num == 1) + *pn = copypn(sp->process_array[0]->pn); + else { + pn1 = sp->process_array[0]->pn; + for(i = 1; i < sp->process_num; i++) { + *pn = composepn(pn1, sp->process_array[i]->pn); + if(i > 1) + deallocpn(pn1); // discard intermediary results + pn1 = pn; + } + } + + /* Find cnum, the number of constraints */ + for(c = sp->constraint_list, cnum = 0; c; c = c->next, cnum++); + + /* Allocate L, H, C, B */ + + AllocateMatrixType(3, L, cnum, pn->pnum); + AllocateMatrixType(3, H, cnum, pn->tnum); + AllocateMatrixType(3, C, cnum, pn->tnum); + *B = tcalloc(cnum, sizeof(**B)); + + /* Initialize L, H, C, B */ + + for(c = sp->constraint_list, i = 0; c; i++, c = c->next) { + /* it is assumed that there are no disjunctive constraints */ + in = 0; + if(c->expr->left_ineq) + in = c->expr->left_ineq; + if(c->expr->right_ineq) + in = c->expr->right_ineq; + if(!in) + merror(0, "EXTRACTLCHB: Unexpected expression format"); + (*B)[i] = in->free_term; + for(var = in->variable_list; var; var = var->next) { + j = find_var_index(var, pn, sp); + if(var->type == MARKINGV) + SetMatrixEl(L, i, j, var->coefficient); + if(var->type == FIRINGV) + SetMatrixEl(H, i, j, var->coefficient); + if(var->type == PARIKHV) + SetMatrixEl(C, i, j, var->coefficient); + } + } +} + + +/*************************************************************************** + GETSUPERVISOR +****************************************************************************/ + +pns getSupervisor(pns* pn, matrix* Dcm, matrix* Dcp, int* ms0) { + +/* Extracts the PN representing the supervisor from the plant PN (pn), the + closed-loop input (Dcp) and output (Dcm) matrices and from the initial + marking of the closed-loop (ms0). + + This function assumes free-labeled PNs. */ + + pns pnsv; + int tnum, i, j, k, l, t, pcn, tcn, flag, *labels; + + if(!pn->t) + merror(0, "GETSUPERVISOR: Expects a labeled PN"); + + /* Find tnum -- the number of supervisor transitions */ + + pcn = NumberOfRows(*Dcm); + tcn = NumberOfColumns(*Dcp); + + for(i = 0, tnum = 0; i < pcn; i++) + for(j = 0; j < tcn; i++) + tnum += ( GetMatrixEl(Dcm, i, j) || GetMatrixEl(Dcp, i, j) ); + + /* Initialize supervisor PN */ + + pnsv = createpn("pnum tnum", pcn - pn->pnum, tnum); + + if(ms0) + updatepn(&pnsv, "m0", ms0+pn->pnum); + + pnsv.t = tmalloc(tnum*sizeof(*(pnsv.t))); + if(pn->trans_name) + pnsv.trans_name = tmalloc(tnum*sizeof(*(pn->trans_name))); + + for(j = 0, flag = 0, t = 0; j < tcn; i++, flag = 0) { + for(i = pn->pnum, tnum = 0; i < pcn; i++) { + k = GetMatrixEl(Dcm, i, j); + l = GetMatrixEl(Dcp, i, j); + if( k || l ) { /* write data for place i and transition t */ + flag = 1; + SetMatrixEl(&pnsv.out, i, t, k); + SetMatrixEl(&pnsv.in , i, t, l); + } + } + if(flag) { + pnsv.t[t] = pn->t[j]; + if(pn->trans_name[j]) { + pnsv.trans_name[t] = tmalloc((1+strlen(pn->trans_name[j]))*sizeof(char)); + strcpy(pnsv.trans_name[t], pn->trans_name[j]); + } + t++; + } + } + + return pnsv; +} + + + + + + + + + + /* Things to do: - composepn ignores the text fields of the pns. - composepn assumes that the places in the two pns are distinct. Modified: pnheaders/pns.h =================================================================== --- pnheaders/pns.h 2009-06-24 21:46:41 UTC (rev 101) +++ pnheaders/pns.h 2009-06-26 04:44:39 UTC (rev 102) @@ -133,7 +133,8 @@ arcs** arc_list; /* Directs the implementation of the transition arcs in software. Note that arc_list[i] is the list of - arcs corresponding to the transition i. */ + arcs corresponding to the transition i. Currently + used for plant PNs, not supervisor PNs. */ } pns; @@ -172,6 +173,11 @@ deallocate it! All the 'next' pointers in the arcs* argument must be zero, unless some other element follows. - C: int* type expected. The parameter is the capacity vector. + - freelabel: int* type expected. Assigns distinct labels to unlabeled + transitions. The parameter should be the address of an integer + variable. Labels are distinct if no other variable is used for + free labeling, the variable is never modified except by + createpn/updatepn, and its initial value is <= 0. - label: int* type expected. Represents transition labels. - live: int type expected. The parameter identifies the transition that should be live. @@ -240,10 +246,11 @@ #define PARIKHV 2 /* Parikh vector (firing count vector) */ typedef struct variable { /* list of variables in an inequality */ - int type:2; /* type = MARKING, FIRINGV, or PARIKHV. Indicates whether the - variable is part of the marking, firing, or Parikh vector.*/ + unsigned type:2; /* type = MARKING, FIRINGV, or PARIKHV. Indicates whether the + variable is part of the marking, firing, or Parikh vector.*/ int coefficient; /* the coefficient of the variable in the inequality */ - pns* pn; /* the address of the PN to which the variable belongs */ + pns* pn; /* the address of the PN to which the variable belongs; the address + should match the address of a process PN. */ int index; /* index of place or transition in PN (row or column number in the input and output matrices) */ struct variable *next; @@ -334,6 +341,19 @@ } specs; +void extractLHCB(specs* sp, pns* pn, matrix* L, matrix* H, matrix* C, int** B); + +/* Extracts a SC specification of the form Lm + Hq + Cv <= B from sp. Also + initializes pn to the Petri net on which the specs should be enforced. */ + + +pns getSupervisor(pns* pn, matrix* Dcm, matrix* Dcp, int* ms0); + +/* Extracts the PN representing the supervisor from the plant PN (pn), the + closed-loop input (Dcp) and output (Dcm) matrices and from the initial + marking of the closed-loop (ms0). This function assumes free-labeled PNs. */ + + void dealloc_specs(specs* sp); void dealloc_process(process* p); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <Ste...@us...> - 2009-06-24 21:46:45
|
Revision: 101 http://pntool.svn.sourceforge.net/pntool/?rev=101&view=rev Author: StephenCamp Date: 2009-06-24 21:46:41 +0000 (Wed, 24 Jun 2009) Log Message: ----------- Implemented and tested reduce. Passes all tests. Implemented chkcons (chk_con2.m) and tested via reduce. Modified Paths: -------------- spnbox/spnbox.h Added Paths: ----------- spnbox/chkcons.c spnbox/reduce.c spnbox/tests/test-reduce.c spnbox/tests/test-reduce.mak spnbox/tests/test-reduce.txt Added: spnbox/chkcons.c =================================================================== --- spnbox/chkcons.c (rev 0) +++ spnbox/chkcons.c 2009-06-24 21:46:41 UTC (rev 101) @@ -0,0 +1,148 @@ +#include <stdlib.h> +#include "../pnheaders/matrix.h" +#include "../pnheaders/pns.h" +#include "matrixmath.h" +#include "spnbox.h" +#include "MemoryManager.h" + +static int CheckParams(matrix* L0, int* B0, matrix* l0); +static void BuildProblem(matrix* L0, int* B0, matrix* l0, int b0, matrix** L1, double** B1); + +/*This is an implementation of chk_con2.m. chkcons.m, a more efficient but +more complicated version of the same function, will be implemented later.*/ +chkcons_r chkcons(matrix* L0, int* B0, matrix* l0, int b0) +{ + chkcons_r result; + ipsolve_r IPSolution; + + matrix *L1; + double *B1; + + memset(&result, 0, sizeof(chkcons_r)); + + if (! CheckParams(L0, B0, l0)) return result; + + /*Build L1 and B1, the constraint matrices and vector of the linear + programming problem.*/ + BuildProblem(L0, B0, l0, b0, &L1, &B1); + + /*If verbosity is high enough print a period to indicate that an ipsolve + call is beginning.*/ + if (is_verbose() >= VRB_CHKCONS_IPSOLVE) + { + printf(".\n"); + } + /*Solve the linear programming problem solution.*/ + IPSolution = ipsolve(L1, B1, 0, 0, 0, 0, 0); + + /*If the problem was feasible copy it to the return vector*/ + if (! strcmp(IPSolution.mhow, HOW_OK)) + { + result.resCount = NumberOfColumns(*L0); + result.res = IPSolution.res; + } + /*Otherwise free the memory used by the solution and leave the return value + empty.*/ + else + { + free(result.res); + } + + /*Free intermediate memory and return.*/ + free(B1); + if (L1 != L0) + { + DeallocateMatrix(L1); + free(L1); + } + return result; +} + +/*This function fills L1 with L0 if present concatenated rowwise with l0 if +present, and B1 with B0 if present followed by b0 if l0 is present*/ +void BuildProblem(matrix* L0, int* B0, matrix* l0, int b0, matrix** L1, double** B1) +{ + int Vars, Cons, i; + /*Figure out how many variables and constraint rows there will be overall.*/ + if (L0) + { + Vars = NumberOfColumns(*L0); + Cons = NumberOfRows(*L0); + if (l0) Cons++; + } + else + { + Vars = NumberOfColumns(*l0); + Cons = 1; + } + /*Allocate space.*/ + /*If only L0 is present, optimize by never actually doing the copy. Merely + set L1 to point to L0.*/ + if (L0 && ! l0) + { + *L1 = L0; + } + else + { + *L1 = tmalloc(sizeof(matrix)); + AllocateMatrixType(2, *L1, Cons, Vars); + } + (*B1) = tcalloc(Cons, sizeof(double)); + + /*If L0 is present, copy it into place and copy the appropriate elements of + the constraint vector.*/ + if (L0) + { + CopyBlock(NumberOfRows(*L0), NumberOfColumns(*L0), L0, 0, 0, *L1, 0, 0); + for (i = 0; i < NumberOfRows(*L0); i++) + { + (*B1)[i] = (double) B0[i]; + } + } + /*If l0 is present, copy its negated version into the appropriate elements + of the last row of the constraint matrix and fill the last element of the + constraint vector with the appropriate value.*/ + if (l0) + { + for (i = 0; i < Vars; i++) + { + SetMatrixEl(*L1, Cons - 1, i, -GetMatrixEl(l0, 0, i)); + } + (*B1)[Cons - 1] = (double) (1 - b0); + } +} + +int CheckParams(matrix* L0, int* B0, matrix* l0) +{ + /*One of L0 or l0 is required.*/ + if (! (L0 || l0)) + { + merror(0, "CHK_CONS: Neither L nor l was given"); + return 0; + } + /*If L0 is present then B0 is required.*/ + if (L0 && ! B0) + { + merror(0, "CHK_CONS: L was given but B was not"); + return 0; + } + /*If l0 is present it must be a row vector.*/ + if (l0) + { + if (NumberOfRows(*l0) != 1) + { + merror(0, "CHK_CONS: l is not a row vector"); + return 0; + } + /*If L0 is also present the two must have the same number of columns.*/ + if (L0) + { + if (NumberOfColumns(*L0) != NumberOfColumns(*l0)) + { + merror(0, "CHK_CONS: The number of columns in L is not the same as in l"); + return 0; + } + } + } + return 1; +} Added: spnbox/reduce.c =================================================================== --- spnbox/reduce.c (rev 0) +++ spnbox/reduce.c 2009-06-24 21:46:41 UTC (rev 101) @@ -0,0 +1,120 @@ +#include <stdlib.h> +#include "../pnheaders/matrix.h" +#include "spnbox.h" + +static void ExtractConstraint(matrix* L, matrix* l, int* B, int* b, int Constraint); +static void RestoreConstraint(matrix* L, matrix* l, int* B, int b, int Constraint); + +reduce_r reduce(matrix* L0, int* B0, int verbose) +{ + reduce_r result; + chkcons_r ChkResult; + matrix l, L; + int i, j, b, Rows; + int *KeepRow, *B; + + /*Initialize the result to a null error return value.*/ + memset(&result, 0, sizeof(reduce_r)); + + /*L and B are both required.*/ + if (! (L0 && B0)) + { + merror(0, "reduce: One of L or B has not been given"); + return result; + } + + /*Make a copy of the constraints that we can edit.*/ + AllocateMatrixType(2, &L, NumberOfRows(*L0), NumberOfColumns(*L0)); + CopyMatrix(L0, &L); + AllocateMatrixType(2, &l, 1, NumberOfColumns(*L0)); + B = tcalloc(NumberOfRows(*L0), sizeof(int)); + memcpy(B, B0, NumberOfRows(*L0) * sizeof(int)); + + /*Allocate space for a flag array to be used to indicate if a row should be + removed.*/ + KeepRow = tcalloc(NumberOfRows(*L0), sizeof(int)); + + /*The original matlab implementation removed constraint rows found to be + redundant as it went along. In order to optimize for speed we will simply + zero such constraint rows here. chkcons uses ipsolve to test for redundancy, + and ipsolve will automatically ignore null rows.*/ + + /*Iterate through the constraint rows. Test each one for redundancy using + chkcons, and if it is redundant mark it for removal and zero it.*/ + Rows = 0; + for (i = 0; i < NumberOfRows(*L0); i++) + { + if (verbose) printf("REDUCE: Constraint %3d\n", i); + + /*chkcons tests a given set of constraints against a single constraint. + Copy the current constraint row into the row variables and then zero it + in the constraint variables. If it turns out not to be redundant it will be + restored.*/ + ExtractConstraint(&L, &l, B, &b, i); + + /*Check the constraint*/ + ChkResult = chkcons(&L, B, &l, b); + + /*chkcons will return a 0 in resCount if the constraint is redundant.*/ + if (ChkResult.resCount) + { + /*The constraint was not redundant. Restore it, mark it for keeping, and + increment the count of rows kept.*/ + RestoreConstraint(&L, &l, B, b, i); + KeepRow[i] = 1; + Rows++; + } + /*Otherwise the row is redundant. Leave it nulled out.*/ + } + + /*Allocate space for the result and copy it.*/ + AllocateMatrixType(2, &result.Lf, Rows, NumberOfColumns(L)); + result.Bf = tcalloc(Rows, sizeof(int)); + result.indf = tcalloc(Rows, sizeof(int)); + j = 0; + for (i = 0; i < NumberOfRows(L); i++) + { + if (KeepRow[i]) + { + CopyBlock(1, NumberOfColumns(L), &L, i, 0, &result.Lf, j, 0); + result.Bf[j] = B[i]; + /*Note the original indices of the rows we kept.*/ + result.indf[j] = i; + j++; + } + } + /*If we removed any rows, set how to 1.*/ + if (Rows != NumberOfRows(L)) + { + result.how = 1; + } + /*Free memory.*/ + DeallocateMatrix(&L); + DeallocateMatrix(&l); + free(B); + free(KeepRow); + + return result; +} + +void ExtractConstraint(matrix* L, matrix* l, int* B, int* b, int Constraint) +{ + int i; + for (i = 0; i < NumberOfColumns(*L); i++) + { + SetMatrixEl(l, 0, i, GetMatrixEl(L, Constraint, i)); + SetMatrixEl(L, Constraint, i, 0); + } + *b = B[Constraint]; + B[Constraint] = 0; +} + +void RestoreConstraint(matrix* L, matrix* l, int* B, int b, int Constraint) +{ + int i; + for (i = 0; i < NumberOfColumns(*L); i++) + { + SetMatrixEl(L, Constraint, i, GetMatrixEl(l, 0, i)); + } + B[Constraint] = b; +} Modified: spnbox/spnbox.h =================================================================== --- spnbox/spnbox.h 2009-06-24 21:35:13 UTC (rev 100) +++ spnbox/spnbox.h 2009-06-24 21:46:41 UTC (rev 101) @@ -97,6 +97,20 @@ int *TDCount; } pn2eacpn_r; +typedef struct chkcons_r +{ + double* res; + int resCount; +} chkcons_r; + +typedef struct reduce_r +{ + matrix Lf; + int* Bf; + int* indf; + int how; +} reduce_r; + /*Constants returned in by functions to indicate the nature of the result.*/ #define HOW_ERROR "error" #define HOW_OK "OK" @@ -110,6 +124,11 @@ #define INF 1E30 // a large number used for "infinity" +/*If the verbosity reaches this threshold, chkcons will print a period each time +it begins an ipsolve call, allowing progress in checking all the constraints in +a set to be watched.*/ +#define VRB_CHKCONS_IPSOLVE 3 + msplit_r msplit(matrix* Dm, matrix* Dp, int* mask, matrix* M, matrix* L0, matrix* L, int* ipl, int ipCount, int* dpl, int dpCount, int** TD, int* TDCount); /*MSPLIT - split transitions to make a Petri net PT-ordinary. [DF, DFM, DFP] = msplit(DM, DP) @@ -420,4 +439,44 @@ Matlab code was under construction at time of conversion to C. Stephen Camp, June 2009 */ + +chkcons_r chkcons(matrix* L0, int* B0, matrix* l0, int b0); +/* +res = chk_con2(L,B,l,b) + +Checks consistency of the set of constraints Lx >= B and lx< b, +where x should be a nonnegative integer vector. +'l' is expected to be a 1-D vector. + +If the system is consistent, the function returns a feasible +solution. So 'res' is a nonnegative integer vector x such +that Lx >= B and lx < b. If res is empty, then the constraint +lx >= b is redundant for Lx >= B. + +The C implementation of chkcons currently is an implementation of CHK_CON2.M from the original Matlab package. + +CHK_CON2 is the old version of CHK_CONS. It is expected to be +slower than CHK_CONS. However, CHK_CON2 is simpler, and so it +may be more reliable. + +The C implementation may be changed to implement the newer CHK_CON.M sometime in the future. + +Written by Marian V. Iordache, mar...@le.... +Converted to C by Marian Iordache and Stephen Camp, ste...@le.... +*/ + +reduce_r reduce(matrix* L0, int* B0, int verbose); +/* +[Lf, Bf, ind, how] = reduce(L,B) + +This function removes redundant constraints of Lx>=B, where x +is a nonnegative integer vector. 'ind' stores the indices of +the rows that were kept. The variable how is set to 1 if +redundant constraints have been found. + +See also CHK_CONS, IP_SOLVE. + +Written for Matlab by Marian V. Iordache, mar...@le.... +Converted to C by Marian Iordache and Stephen Camp, ste...@le.... +*/ #endif Added: spnbox/tests/test-reduce.c =================================================================== --- spnbox/tests/test-reduce.c (rev 0) +++ spnbox/tests/test-reduce.c 2009-06-24 21:46:41 UTC (rev 101) @@ -0,0 +1,85 @@ +#include "../../pnheaders/matrix.h" +#include "../spnbox.h" +#include "../MemoryManager.h" +#include "StructuredIO.h" + +/*Define the is_verbose function appropriately for testing.*/ +int is_verbose() +{ + return 3; +} + +FILE* GetInput(int argc, char* argv[]) +{ + FILE* file; + if (argc > 1) + { + if (file = fopen(argv[1], "r")) + { + printf("Taking input from file '%s'...\n", argv[1]); + return file; + } + else + { + printf("Failed to open file '%s' for read access!\n", argv[1]); + return 0; + } + } + else + { + printf("Taking input from console...\n"); + return stdin; + } +} + +static void GetOutFilled(reduce_r* result, int OutFilled[]); + +int main(int argc, char* argv[]) +{ + FILE* input; + matrix L; + int BCount; + int *B, *InFilled; + int OutFilled[4]; + reduce_r result; + MemoryManager memory; + char InputDesc[] = "matrix L, arrayi B"; + char OutputDesc[] = "matrix Lf, arrayi Bf, arrayi RowsKept, int How"; + + /*Get the input file.*/ + if (! (input = GetInput(argc, argv))) return 0; + + memory = CreateMemoryManager(4, 1, 0, 0); + while (ParseStructure(input, InputDesc, &InFilled, &memory, &L, &B, &BCount)) + { + /*Display the problem*/ + printf("Problem:\n"); + DisplayStructure(InputDesc, InFilled, &L, B, BCount); + + /*Solve the problem*/ + result = reduce(InFilled[0] ? &L : 0, InFilled[1] ? B : 0, 1); + + /*Display the solution*/ + GetOutFilled(&result, OutFilled); + printf("Result:\n"); + DisplayStructure(OutputDesc, OutFilled, &result.Lf, result.Bf, NumberOfRows(result.Lf), result.indf, NumberOfRows(result.Lf), result.how); + FreeMemory(&memory); + memory = CreateMemoryManager(4, 1, 0, 0); + printf("-----------------------------------------------------------------\n"); + } + FreeMemory(&memory); + return 0; +} + +void GetOutFilled(reduce_r* result, int OutFilled[]) +{ + /*Clear OutFilled*/ + memset(OutFilled, 0, 4 * sizeof(int)); + + /*Set OutFilled flags only if the corresponding pointers are not null.*/ + if (NumberOfRows(result->Lf)) OutFilled[0] = 1; + if (result->Bf) OutFilled[1] = 1; + if (result->indf) OutFilled[2] = 1; + /*How is always filled since it is just an integer type.*/ + OutFilled[3] = 1; +} Added: spnbox/tests/test-reduce.mak =================================================================== --- spnbox/tests/test-reduce.mak (rev 0) +++ spnbox/tests/test-reduce.mak 2009-06-24 21:46:41 UTC (rev 101) @@ -0,0 +1,41 @@ +COMPILER=gcc -g -ggdb + +test-reduce: test-reduce.o matrix.o StructuredIO.o MemoryManager.o general.o pns.o matrixmath.o chkcons.o reduce.o ipsolve.o ipslv.o + $(COMPILER) -o test-reduce.exe test-reduce.o matrix.o StructuredIO.o MemoryManager.o general.o pns.o reduce.o matrixmath.o chkcons.o ipsolve.o ipslv.o ../lp_solve_5.5/lpsolve55/liblpsolve55.a + +general.o: ../../pnheaders/general.c ../../pnheaders/general.h + $(COMPILER) -c ../../pnheaders/general.c + +pns.o: ../../pnheaders/pns.c ../../pnheaders/pns.h + $(COMPILER) -c ../../pnheaders/pns.c + +matrix.o: ../../pnheaders/matrix.c ../../pnheaders/matrix.h ../../pnheaders/pns.h + $(COMPILER) -c ../../pnheaders/matrix.c + +reader.o: ../spnbox.h ../MemoryManager.h reader.c + $(COMPILER) -c reader.c + +MemoryManager.o: ../MemoryManager.h ../MemoryManager.c ../../pnheaders/general.h ../../pnheaders/matrix.h + $(COMPILER) -c ../MemoryManager.c + +ipsolve.o: ../spnbox.h ../matrixmath.h ../../pnheaders/general.h ../../pnheaders/matrix.h ../MemoryManager.h ../ipsolve.c + $(COMPILER) -c ../ipsolve.c + +ipslv.o: ../spnbox.h ../ipslv.c + $(COMPILER) -c ../ipslv.c + +StructuredIO.o: ../MemoryManager.h ../../pnheaders/matrix.h StructuredIO.h StructuredIO.c + $(COMPILER) -c StructuredIO.c + +test-reduce.o: test-reduce.c ../spnbox.h ../MemoryManager.h StructuredIO.h ../matrixmath.h + $(COMPILER) -c test-reduce.c + +matrixmath.o: ../matrixmath.c ../matrixmath.h ../../pnheaders/matrix.h + $(COMPILER) -c ../matrixmath.c + +reduce.o: ../spnbox.h ../../pnheaders/matrix.h ../reduce.c + $(COMPILER) -c ../reduce.c + +chkcons.o: ../spnbox.h ../../pnheaders/matrix.h ../../pnheaders/pns.h ../chkcons.c + $(COMPILER) -c ../chkcons.c + \ No newline at end of file Added: spnbox/tests/test-reduce.txt =================================================================== --- spnbox/tests/test-reduce.txt (rev 0) +++ spnbox/tests/test-reduce.txt 2009-06-24 21:46:41 UTC (rev 101) @@ -0,0 +1,63 @@ +rem Keywords: matrix L, arrayi B + +echo Problem 1 +echo None of these constraints should be redundant. + +L 3 5 +1 0 0 0 1 +0 1 0 0 1 +0 0 1 0 1 + +B 3 +2 2 2 + +done + +echo Problem 2 +echo The first constraint should be redundant. + +L 3 5 +1 0 0 0 1 +1 0 0 0 1 +0 0 1 0 1 + +B 3 +1 1 1 + +done + +echo Problem 3 +echo The first or third constraint should be redundant. +L 3 3 +1 0 1 +0 1 1 +1 1 2 + +B 3 +1 1 2 + +done +echo Problem 4 +echo This is a test of a constraint matrix with a null row (row 1). +L 3 3 +1 0 1 +0 0 0 +0 1 0 + +B 3 +1 0 2 + +done + +echo Problem 5 +echo The third constraint should be redundant. +L 3 3 +1 0 1 +0 1 1 +1 2 2 + +B 3 +1 1 2 +done + +quit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2009-06-24 21:35:29
|
Revision: 100 http://pntool.svn.sourceforge.net/pntool/?rev=100&view=rev Author: thecodeweasel Date: 2009-06-24 21:35:13 +0000 (Wed, 24 Jun 2009) Log Message: ----------- Improved documentation Support for processes without initial markings Support for the latest pn libraries (compatible with r98) Modified Paths: -------------- translator/docs/TODO.rtf translator/main.c translator/pncompactor.c translator/pncompactor.g translator/pncompactor.h translator/pngenerator.c translator/pngenerator.g translator/pngenerator.h translator/pnscript.g translator/pnscriptLexer.c translator/pnscriptLexer.h translator/pnscriptParser.c translator/pnscriptParser.h Modified: translator/docs/TODO.rtf =================================================================== --- translator/docs/TODO.rtf 2009-06-24 21:16:03 UTC (rev 99) +++ translator/docs/TODO.rtf 2009-06-24 21:35:13 UTC (rev 100) @@ -24,13 +24,13 @@ \strike \strikec0 Implement error handling(/recovery?) - use flags for warning levels?\strike0\striked0 \ \strike \strikec0 Update README\ \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural -\cf0 \strike0\striked0 Allow threads to be declared with no initial marking\ +\cf0 \strikec0 Allow threads to be declared with no initial marking\strike0\striked0 \ Debug weird cygwin memory corruption\ dealloc the specs structure in testing\ -improve documentation\ +\strike \strikec0 improve documentation\strike0\striked0 \ revert the performance hack to use updatepn\ look at improving antlr's error handling\ \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural \cf0 Generate test data\ -Apparently the constraint list was supposed to be a linked list. Change to use that.\ +\strike \strikec0 Apparently the constraint list was supposed to be a linked list. Change to use that.\strike0\striked0 \ Implement a tree walker to "balance" the equations} \ No newline at end of file Modified: translator/main.c =================================================================== --- translator/main.c 2009-06-24 21:16:03 UTC (rev 99) +++ translator/main.c 2009-06-24 21:35:13 UTC (rev 100) @@ -226,9 +226,6 @@ if (psr->pParser->rec->state->errorCount > 0) { fprintf(stderr, "The parser returned %d error(s), tree walking aborted.\n", psr->pParser->rec->state->errorCount); } else { - int* numConstraints; - numConstraints = tmalloc(sizeof(int)); - *numConstraints = 0; nodes = antlr3CommonTreeNodeStreamNewTree(pnscriptAST.tree, ANTLR3_SIZE_HINT); // sIZE HINT WILL SOON BE DEPRECATED!! //print tree structure from the initial parsing @@ -244,7 +241,7 @@ printf("Done.\n"); fflush(stdout); printf("Validating and optimizing...\n"); - pncompactAST = treePsr->pn(treePsr, numConstraints); + pncompactAST = treePsr->pn(treePsr); if (treePsr->pTreeParser->rec->state->errorCount > 0) { fprintf(stderr, "The parser returned %d error(s), tree walking aborted.\n", treePsr->pTreeParser->rec->state->errorCount); } else { @@ -262,7 +259,7 @@ printf("Done.\n"); fflush(stdout); printf("Generating Petri Nets...\n"); - output = generator->pn(generator, processes, threads, (char*) fName, *numConstraints); + output = generator->pn(generator, processes, threads, (char*) fName); if (generator->pTreeParser->rec->state->errorCount > 0) { fprintf(stderr, "The parser returned %d error(s), code generation aborted.\n", generator->pTreeParser->rec->state->errorCount); } @@ -270,7 +267,6 @@ nodes ->free (nodes); nodes = NULL; generator ->free (generator); generator = NULL; } - free(numConstraints); numConstraints = NULL; } // We did not return anything from this parser rule, so we can finish. It only remains Modified: translator/pncompactor.c =================================================================== --- translator/pncompactor.c 2009-06-24 21:16:03 UTC (rev 99) +++ translator/pncompactor.c 2009-06-24 21:35:13 UTC (rev 100) @@ -2,7 +2,7 @@ * This C source file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pncompactor.g - * - On : 2009-06-23 14:50:19 + * - On : 2009-06-24 16:28:18 * - for the tree parser : pncompactorTreeParser * * Editing it, at least manually, is not wise. * @@ -361,7 +361,7 @@ // Forward declare the locally static matching functions we have generated. // -static pncompactor_pn_return pn (ppncompactor ctx, int* num); +static pncompactor_pn_return pn (ppncompactor ctx); static pncompactor_proc_definitions_return proc_definitions (ppncompactor ctx); static pncompactor_def_start_return def_start (ppncompactor ctx); static pncompactor_trans_defs_return trans_defs (ppncompactor ctx); @@ -545,274 +545,274 @@ return pncompactorTokenNames; } - - int* numConstraints; - /* Declare the bitsets */ -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_definitions_in_pn88 */ -static ANTLR3_BITWORD FOLLOW_proc_definitions_in_pn88_bits[] = { ANTLR3_UINT64_LIT(0x0000000000C00400) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_definitions_in_pn88 = { FOLLOW_proc_definitions_in_pn88_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_instantiations_in_pn91 */ -static ANTLR3_BITWORD FOLLOW_proc_instantiations_in_pn91_bits[] = { ANTLR3_UINT64_LIT(0x0000000400C00402) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_instantiations_in_pn91 = { FOLLOW_proc_instantiations_in_pn91_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraints_in_pn94 */ -static ANTLR3_BITWORD FOLLOW_constraints_in_pn94_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000402) }; -static ANTLR3_BITSET_LIST FOLLOW_constraints_in_pn94 = { FOLLOW_constraints_in_pn94_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_other_commands_in_pn97 */ -static ANTLR3_BITWORD FOLLOW_other_commands_in_pn97_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000002) }; -static ANTLR3_BITSET_LIST FOLLOW_other_commands_in_pn97 = { FOLLOW_other_commands_in_pn97_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_def_start_in_proc_definitions109 */ -static ANTLR3_BITWORD FOLLOW_def_start_in_proc_definitions109_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_def_start_in_proc_definitions109 = { FOLLOW_def_start_in_proc_definitions109_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_defs_in_proc_definitions111 */ -static ANTLR3_BITWORD FOLLOW_trans_defs_in_proc_definitions111_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200468) }; -static ANTLR3_BITSET_LIST FOLLOW_trans_defs_in_proc_definitions111 = { FOLLOW_trans_defs_in_proc_definitions111_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_functions_in_proc_definitions114 */ -static ANTLR3_BITWORD FOLLOW_select_functions_in_proc_definitions114_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200008) }; -static ANTLR3_BITSET_LIST FOLLOW_select_functions_in_proc_definitions114 = { FOLLOW_select_functions_in_proc_definitions114_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_nondeterm_in_proc_definitions117 */ -static ANTLR3_BITWORD FOLLOW_nondeterm_in_proc_definitions117_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_nondeterm_in_proc_definitions117 = { FOLLOW_nondeterm_in_proc_definitions117_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_def_start128 */ -static ANTLR3_BITWORD FOLLOW_ID_in_def_start128_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_def_start128 = { FOLLOW_ID_in_def_start128_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_extern_trans_def_in_trans_defs136 */ -static ANTLR3_BITWORD FOLLOW_extern_trans_def_in_trans_defs136_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_extern_trans_def_in_trans_defs136 = { FOLLOW_extern_trans_def_in_trans_defs136_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_def_in_trans_defs141 */ -static ANTLR3_BITWORD FOLLOW_trans_def_in_trans_defs141_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_trans_def_in_trans_defs141 = { FOLLOW_trans_def_in_trans_defs141_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_extern_trans_def151 */ -static ANTLR3_BITWORD FOLLOW_set_in_extern_trans_def151_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_set_in_extern_trans_def151 = { FOLLOW_set_in_extern_trans_def151_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_extern_trans_def159 */ -static ANTLR3_BITWORD FOLLOW_ID_in_extern_trans_def159_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_extern_trans_def159 = { FOLLOW_ID_in_extern_trans_def159_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def171 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def171_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def171 = { FOLLOW_ID_in_trans_def171_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def173 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def173_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def173 = { FOLLOW_CODE_BLOCK_in_trans_def173_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def180 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def180_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def180 = { FOLLOW_ID_in_trans_def180_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def182 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def182_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def182 = { FOLLOW_ID_in_trans_def182_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def185 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def185_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def185 = { FOLLOW_CODE_BLOCK_in_trans_def185_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def193 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def193_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def193 = { FOLLOW_ID_in_trans_def193_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def196 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def196_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def196 = { FOLLOW_ID_in_trans_def196_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def198 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def198_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def198 = { FOLLOW_ID_in_trans_def198_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def201 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def201_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def201 = { FOLLOW_CODE_BLOCK_in_trans_def201_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_DEF_in_select_functions213 */ -static ANTLR3_BITWORD FOLLOW_SELECT_DEF_in_select_functions213_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_SELECT_DEF_in_select_functions213 = { FOLLOW_SELECT_DEF_in_select_functions213_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_select_functions215 */ -static ANTLR3_BITWORD FOLLOW_ID_in_select_functions215_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002000) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_select_functions215 = { FOLLOW_ID_in_select_functions215_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_select_functions217 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_select_functions217_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_select_functions217 = { FOLLOW_CODE_BLOCK_in_select_functions217_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_45_in_nondeterm228 */ -static ANTLR3_BITWORD FOLLOW_45_in_nondeterm228_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_45_in_nondeterm228 = { FOLLOW_45_in_nondeterm228_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_nondeterm230 */ -static ANTLR3_BITWORD FOLLOW_ID_in_nondeterm230_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_nondeterm230 = { FOLLOW_ID_in_nondeterm230_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_init_in_proc_instantiations242 */ -static ANTLR3_BITWORD FOLLOW_proc_init_in_proc_instantiations242_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_init_in_proc_instantiations242 = { FOLLOW_proc_init_in_proc_instantiations242_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_sync_def_in_proc_instantiations246 */ -static ANTLR3_BITWORD FOLLOW_sync_def_in_proc_instantiations246_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_sync_def_in_proc_instantiations246 = { FOLLOW_sync_def_in_proc_instantiations246_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_start_in_proc_instantiations250 */ -static ANTLR3_BITWORD FOLLOW_proc_start_in_proc_instantiations250_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_start_in_proc_instantiations250 = { FOLLOW_proc_start_in_proc_instantiations250_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_definitions_in_pn89 */ +static ANTLR3_BITWORD FOLLOW_proc_definitions_in_pn89_bits[] = { ANTLR3_UINT64_LIT(0x0000000000C00400) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_definitions_in_pn89 = { FOLLOW_proc_definitions_in_pn89_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_instantiations_in_pn92 */ +static ANTLR3_BITWORD FOLLOW_proc_instantiations_in_pn92_bits[] = { ANTLR3_UINT64_LIT(0x0000000400C00402) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_instantiations_in_pn92 = { FOLLOW_proc_instantiations_in_pn92_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraints_in_pn95 */ +static ANTLR3_BITWORD FOLLOW_constraints_in_pn95_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000402) }; +static ANTLR3_BITSET_LIST FOLLOW_constraints_in_pn95 = { FOLLOW_constraints_in_pn95_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_other_commands_in_pn98 */ +static ANTLR3_BITWORD FOLLOW_other_commands_in_pn98_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000002) }; +static ANTLR3_BITSET_LIST FOLLOW_other_commands_in_pn98 = { FOLLOW_other_commands_in_pn98_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_def_start_in_proc_definitions110 */ +static ANTLR3_BITWORD FOLLOW_def_start_in_proc_definitions110_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_def_start_in_proc_definitions110 = { FOLLOW_def_start_in_proc_definitions110_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_defs_in_proc_definitions112 */ +static ANTLR3_BITWORD FOLLOW_trans_defs_in_proc_definitions112_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200468) }; +static ANTLR3_BITSET_LIST FOLLOW_trans_defs_in_proc_definitions112 = { FOLLOW_trans_defs_in_proc_definitions112_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_functions_in_proc_definitions115 */ +static ANTLR3_BITWORD FOLLOW_select_functions_in_proc_definitions115_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200008) }; +static ANTLR3_BITSET_LIST FOLLOW_select_functions_in_proc_definitions115 = { FOLLOW_select_functions_in_proc_definitions115_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_nondeterm_in_proc_definitions118 */ +static ANTLR3_BITWORD FOLLOW_nondeterm_in_proc_definitions118_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_nondeterm_in_proc_definitions118 = { FOLLOW_nondeterm_in_proc_definitions118_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_def_start129 */ +static ANTLR3_BITWORD FOLLOW_ID_in_def_start129_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_def_start129 = { FOLLOW_ID_in_def_start129_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_extern_trans_def_in_trans_defs137 */ +static ANTLR3_BITWORD FOLLOW_extern_trans_def_in_trans_defs137_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_extern_trans_def_in_trans_defs137 = { FOLLOW_extern_trans_def_in_trans_defs137_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_def_in_trans_defs142 */ +static ANTLR3_BITWORD FOLLOW_trans_def_in_trans_defs142_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_trans_def_in_trans_defs142 = { FOLLOW_trans_def_in_trans_defs142_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_extern_trans_def152 */ +static ANTLR3_BITWORD FOLLOW_set_in_extern_trans_def152_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_set_in_extern_trans_def152 = { FOLLOW_set_in_extern_trans_def152_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_extern_trans_def160 */ +static ANTLR3_BITWORD FOLLOW_ID_in_extern_trans_def160_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_extern_trans_def160 = { FOLLOW_ID_in_extern_trans_def160_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def172 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def172_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def172 = { FOLLOW_ID_in_trans_def172_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def174 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def174_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def174 = { FOLLOW_CODE_BLOCK_in_trans_def174_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def181 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def181_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def181 = { FOLLOW_ID_in_trans_def181_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def183 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def183_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def183 = { FOLLOW_ID_in_trans_def183_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def186 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def186_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def186 = { FOLLOW_CODE_BLOCK_in_trans_def186_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def194 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def194_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def194 = { FOLLOW_ID_in_trans_def194_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def197 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def197_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def197 = { FOLLOW_ID_in_trans_def197_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def199 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def199_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def199 = { FOLLOW_ID_in_trans_def199_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def202 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def202_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def202 = { FOLLOW_CODE_BLOCK_in_trans_def202_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_DEF_in_select_functions214 */ +static ANTLR3_BITWORD FOLLOW_SELECT_DEF_in_select_functions214_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_SELECT_DEF_in_select_functions214 = { FOLLOW_SELECT_DEF_in_select_functions214_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_select_functions216 */ +static ANTLR3_BITWORD FOLLOW_ID_in_select_functions216_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002000) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_select_functions216 = { FOLLOW_ID_in_select_functions216_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_select_functions218 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_select_functions218_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_select_functions218 = { FOLLOW_CODE_BLOCK_in_select_functions218_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_45_in_nondeterm229 */ +static ANTLR3_BITWORD FOLLOW_45_in_nondeterm229_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_45_in_nondeterm229 = { FOLLOW_45_in_nondeterm229_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_nondeterm231 */ +static ANTLR3_BITWORD FOLLOW_ID_in_nondeterm231_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_nondeterm231 = { FOLLOW_ID_in_nondeterm231_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_init_in_proc_instantiations243 */ +static ANTLR3_BITWORD FOLLOW_proc_init_in_proc_instantiations243_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_init_in_proc_instantiations243 = { FOLLOW_proc_init_in_proc_instantiations243_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_sync_def_in_proc_instantiations247 */ +static ANTLR3_BITWORD FOLLOW_sync_def_in_proc_instantiations247_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_sync_def_in_proc_instantiations247 = { FOLLOW_sync_def_in_proc_instantiations247_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_start_in_proc_instantiations251 */ +static ANTLR3_BITWORD FOLLOW_proc_start_in_proc_instantiations251_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_start_in_proc_instantiations251 = { FOLLOW_proc_start_in_proc_instantiations251_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_init260 */ -static ANTLR3_BITWORD FOLLOW_ID_in_proc_init260_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITWORD FOLLOW_ID_in_proc_init260_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_init260 = { FOLLOW_ID_in_proc_init260_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_numbered_ID_in_proc_init262 */ -static ANTLR3_BITWORD FOLLOW_numbered_ID_in_proc_init262_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_numbered_ID_in_proc_init262 = { FOLLOW_numbered_ID_in_proc_init262_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYNC_TOK_in_sync_def274 */ -static ANTLR3_BITWORD FOLLOW_SYNC_TOK_in_sync_def274_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_SYNC_TOK_in_sync_def274 = { FOLLOW_SYNC_TOK_in_sync_def274_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_sync_def276 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_sync_def276_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_sync_def276 = { FOLLOW_group_elements_in_sync_def276_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_in_proc_start288 */ -static ANTLR3_BITWORD FOLLOW_START_in_proc_start288_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_START_in_proc_start288 = { FOLLOW_START_in_proc_start288_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_start290 */ -static ANTLR3_BITWORD FOLLOW_ID_in_proc_start290_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_start290 = { FOLLOW_ID_in_proc_start290_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraint_block_in_constraints307 */ -static ANTLR3_BITWORD FOLLOW_constraint_block_in_constraints307_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_constraint_block_in_constraints307 = { FOLLOW_constraint_block_in_constraints307_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_constraints313 */ -static ANTLR3_BITWORD FOLLOW_eq_in_constraints313_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_constraints313 = { FOLLOW_eq_in_constraints313_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_live_def_in_constraints318 */ -static ANTLR3_BITWORD FOLLOW_live_def_in_constraints318_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_live_def_in_constraints318 = { FOLLOW_live_def_in_constraints318_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_uncontrol_in_constraints320 */ -static ANTLR3_BITWORD FOLLOW_uncontrol_in_constraints320_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_uncontrol_in_constraints320 = { FOLLOW_uncontrol_in_constraints320_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_unobserve_in_constraints322 */ -static ANTLR3_BITWORD FOLLOW_unobserve_in_constraints322_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_unobserve_in_constraints322 = { FOLLOW_unobserve_in_constraints322_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_constraint_block333 */ -static ANTLR3_BITWORD FOLLOW_ID_in_constraint_block333_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_constraint_block333 = { FOLLOW_ID_in_constraint_block333_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_eq342 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_eq342_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_eq342 = { FOLLOW_relationalExpression_in_eq342_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQS_OP_in_eq348 */ -static ANTLR3_BITWORD FOLLOW_EQS_OP_in_eq348_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQS_OP_in_eq348 = { FOLLOW_EQS_OP_in_eq348_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq350 */ -static ANTLR3_BITWORD FOLLOW_eq_in_eq350_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq350 = { FOLLOW_eq_in_eq350_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq352 */ -static ANTLR3_BITWORD FOLLOW_eq_in_eq352_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq352 = { FOLLOW_eq_in_eq352_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression375 */ -static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression375_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression375 = { FOLLOW_EQ_OP_in_relationalExpression375_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression377 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression377_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression377 = { FOLLOW_additiveExpression_in_relationalExpression377_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression381 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression381_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression381 = { FOLLOW_additiveExpression_in_relationalExpression381_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression402 */ -static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression402_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression402 = { FOLLOW_primary_in_additiveExpression402_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression412 */ -static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression412_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression412 = { FOLLOW_PLUS_in_additiveExpression412_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression416 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression416_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression416 = { FOLLOW_additiveExpression_in_additiveExpression416_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression433 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression433_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression433 = { FOLLOW_additiveExpression_in_additiveExpression433_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression483 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression483_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression483 = { FOLLOW_MINUS_in_additiveExpression483_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression487 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression487_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression487 = { FOLLOW_additiveExpression_in_additiveExpression487_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression503 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression503_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression503 = { FOLLOW_additiveExpression_in_additiveExpression503_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary564 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_primary564_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary564 = { FOLLOW_MINUS_in_primary564_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary568 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary568_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary568 = { FOLLOW_eq_in_primary568_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary583 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_primary583_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary583 = { FOLLOW_group_elements_in_primary583_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary624 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary624_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary624 = { FOLLOW_number_in_primary624_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary635 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary635_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary635 = { FOLLOW_MULT_in_primary635_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary637 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary637_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary637 = { FOLLOW_number_in_primary637_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary639 */ -static ANTLR3_BITWORD FOLLOW_primary_in_primary639_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary639 = { FOLLOW_primary_in_primary639_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary674 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary674_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary674 = { FOLLOW_MULT_in_primary674_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary676 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary676_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary676 = { FOLLOW_number_in_primary676_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary680 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary680_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary680 = { FOLLOW_eq_in_primary680_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def704 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def704_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def704 = { FOLLOW_LIVE_in_live_def704_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def706 */ -static ANTLR3_BITWORD FOLLOW_ALL_in_live_def706_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def706 = { FOLLOW_ALL_in_live_def706_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def708 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def708_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def708 = { FOLLOW_ID_in_live_def708_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def716 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def716_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def716 = { FOLLOW_LIVE_in_live_def716_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def718 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def718_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def718 = { FOLLOW_ID_in_live_def718_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol730 */ -static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol730_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol730 = { FOLLOW_UNCONTROL_in_uncontrol730_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol732 */ -static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol732_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol732 = { FOLLOW_ID_in_uncontrol732_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve744 */ -static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve744_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve744 = { FOLLOW_UNOBSERVE_in_unobserve744_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve746 */ -static ANTLR3_BITWORD FOLLOW_ID_in_unobserve746_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve746 = { FOLLOW_ID_in_unobserve746_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands758 */ -static ANTLR3_BITWORD FOLLOW_print_in_other_commands758_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands758 = { FOLLOW_print_in_other_commands758_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print768 */ -static ANTLR3_BITWORD FOLLOW_PRINT_in_print768_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print768 = { FOLLOW_PRINT_in_print768_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print770 */ -static ANTLR3_BITWORD FOLLOW_ID_in_print770_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_print770 = { FOLLOW_ID_in_print770_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print772 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_print772_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print772 = { FOLLOW_group_elements_in_print772_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number791 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number791_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number791 = { FOLLOW_INT_in_number791_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number804 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_number804_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number804 = { FOLLOW_MINUS_in_number804_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number806 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number806_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number806 = { FOLLOW_INT_in_number806_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements824 */ -static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements824_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements824 = { FOLLOW_GROUP_in_group_elements824_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements826 */ -static ANTLR3_BITWORD FOLLOW_ID_in_group_elements826_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements826 = { FOLLOW_ID_in_group_elements826_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID837 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID837_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID837 = { FOLLOW_ID_in_numbered_ID837_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_init266 */ +static ANTLR3_BITWORD FOLLOW_ID_in_proc_init266_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_init266 = { FOLLOW_ID_in_proc_init266_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_numbered_ID_in_proc_init268 */ +static ANTLR3_BITWORD FOLLOW_numbered_ID_in_proc_init268_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_numbered_ID_in_proc_init268 = { FOLLOW_numbered_ID_in_proc_init268_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYNC_TOK_in_sync_def280 */ +static ANTLR3_BITWORD FOLLOW_SYNC_TOK_in_sync_def280_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_SYNC_TOK_in_sync_def280 = { FOLLOW_SYNC_TOK_in_sync_def280_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_sync_def282 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_sync_def282_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_sync_def282 = { FOLLOW_group_elements_in_sync_def282_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_in_proc_start294 */ +static ANTLR3_BITWORD FOLLOW_START_in_proc_start294_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_START_in_proc_start294 = { FOLLOW_START_in_proc_start294_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_start296 */ +static ANTLR3_BITWORD FOLLOW_ID_in_proc_start296_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_start296 = { FOLLOW_ID_in_proc_start296_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraint_block_in_constraints313 */ +static ANTLR3_BITWORD FOLLOW_constraint_block_in_constraints313_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_constraint_block_in_constraints313 = { FOLLOW_constraint_block_in_constraints313_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_constraints319 */ +static ANTLR3_BITWORD FOLLOW_eq_in_constraints319_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_constraints319 = { FOLLOW_eq_in_constraints319_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_live_def_in_constraints324 */ +static ANTLR3_BITWORD FOLLOW_live_def_in_constraints324_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_live_def_in_constraints324 = { FOLLOW_live_def_in_constraints324_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_uncontrol_in_constraints326 */ +static ANTLR3_BITWORD FOLLOW_uncontrol_in_constraints326_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_uncontrol_in_constraints326 = { FOLLOW_uncontrol_in_constraints326_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_unobserve_in_constraints328 */ +static ANTLR3_BITWORD FOLLOW_unobserve_in_constraints328_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_unobserve_in_constraints328 = { FOLLOW_unobserve_in_constraints328_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_constraint_block339 */ +static ANTLR3_BITWORD FOLLOW_ID_in_constraint_block339_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_constraint_block339 = { FOLLOW_ID_in_constraint_block339_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_eq348 */ +static ANTLR3_BITWORD FOLLOW_relationalExpression_in_eq348_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_eq348 = { FOLLOW_relationalExpression_in_eq348_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQS_OP_in_eq354 */ +static ANTLR3_BITWORD FOLLOW_EQS_OP_in_eq354_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQS_OP_in_eq354 = { FOLLOW_EQS_OP_in_eq354_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq356 */ +static ANTLR3_BITWORD FOLLOW_eq_in_eq356_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq356 = { FOLLOW_eq_in_eq356_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq358 */ +static ANTLR3_BITWORD FOLLOW_eq_in_eq358_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq358 = { FOLLOW_eq_in_eq358_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression381 */ +static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression381_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression381 = { FOLLOW_EQ_OP_in_relationalExpression381_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression383 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression383_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression383 = { FOLLOW_additiveExpression_in_relationalExpression383_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression387 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression387_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression387 = { FOLLOW_additiveExpression_in_relationalExpression387_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression408 */ +static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression408_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression408 = { FOLLOW_primary_in_additiveExpression408_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression418 */ +static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression418_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression418 = { FOLLOW_PLUS_in_additiveExpression418_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression422 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression422_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression422 = { FOLLOW_additiveExpression_in_additiveExpression422_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression439 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression439_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression439 = { FOLLOW_additiveExpression_in_additiveExpression439_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression489 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression489_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression489 = { FOLLOW_MINUS_in_additiveExpression489_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression493 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression493_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression493 = { FOLLOW_additiveExpression_in_additiveExpression493_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression509 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression509_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression509 = { FOLLOW_additiveExpression_in_additiveExpression509_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary570 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_primary570_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary570 = { FOLLOW_MINUS_in_primary570_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary574 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary574_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary574 = { FOLLOW_eq_in_primary574_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary589 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_primary589_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary589 = { FOLLOW_group_elements_in_primary589_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary630 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary630_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary630 = { FOLLOW_number_in_primary630_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary641 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary641_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary641 = { FOLLOW_MULT_in_primary641_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary643 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary643_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary643 = { FOLLOW_number_in_primary643_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary645 */ +static ANTLR3_BITWORD FOLLOW_primary_in_primary645_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary645 = { FOLLOW_primary_in_primary645_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary680 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary680_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary680 = { FOLLOW_MULT_in_primary680_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary682 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary682_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary682 = { FOLLOW_number_in_primary682_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary686 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary686_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary686 = { FOLLOW_eq_in_primary686_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def710 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def710_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def710 = { FOLLOW_LIVE_in_live_def710_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def712 */ +static ANTLR3_BITWORD FOLLOW_ALL_in_live_def712_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def712 = { FOLLOW_ALL_in_live_def712_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def714 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def714_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def714 = { FOLLOW_ID_in_live_def714_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def722 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def722_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def722 = { FOLLOW_LIVE_in_live_def722_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def724 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def724_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def724 = { FOLLOW_ID_in_live_def724_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol736 */ +static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol736_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol736 = { FOLLOW_UNCONTROL_in_uncontrol736_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol738 */ +static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol738_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol738 = { FOLLOW_ID_in_uncontrol738_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve750 */ +static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve750_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve750 = { FOLLOW_UNOBSERVE_in_unobserve750_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve752 */ +static ANTLR3_BITWORD FOLLOW_ID_in_unobserve752_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve752 = { FOLLOW_ID_in_unobserve752_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands764 */ +static ANTLR3_BITWORD FOLLOW_print_in_other_commands764_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands764 = { FOLLOW_print_in_other_commands764_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print774 */ +static ANTLR3_BITWORD FOLLOW_PRINT_in_print774_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print774 = { FOLLOW_PRINT_in_print774_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print776 */ +static ANTLR3_BITWORD FOLLOW_ID_in_print776_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_print776 = { FOLLOW_ID_in_print776_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print778 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_print778_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print778 = { FOLLOW_group_elements_in_print778_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number797 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number797_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number797 = { FOLLOW_INT_in_number797_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number810 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_number810_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number810 = { FOLLOW_MINUS_in_number810_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number812 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number812_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number812 = { FOLLOW_INT_in_number812_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements830 */ +static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements830_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements830 = { FOLLOW_GROUP_in_group_elements830_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements832 */ +static ANTLR3_BITWORD FOLLOW_ID_in_group_elements832_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements832 = { FOLLOW_ID_in_group_elements832_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID843 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID843_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID843_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID843 = { FOLLOW_ID_in_numbered_ID843_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID845 */ -static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID845_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID845 = { FOLLOW_INT_in_numbered_ID845_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID849 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID849_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID849 = { FOLLOW_ID_in_numbered_ID849_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID851 */ +static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID851_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID851 = { FOLLOW_INT_in_numbered_ID851_bits, 1 }; @@ -820,99 +820,99 @@ * DFA tables for the parser */ /** Static dfa state tables for Cyclic ... [truncated message content] |
From: <the...@us...> - 2009-06-24 21:16:09
|
Revision: 99 http://pntool.svn.sourceforge.net/pntool/?rev=99&view=rev Author: thecodeweasel Date: 2009-06-24 21:16:03 +0000 (Wed, 24 Jun 2009) Log Message: ----------- Updated documentation Modified Paths: -------------- translator/README.txt translator/docs/TODO.rtf Modified: translator/README.txt =================================================================== --- translator/README.txt 2009-06-24 01:20:20 UTC (rev 98) +++ translator/README.txt 2009-06-24 21:16:03 UTC (rev 99) @@ -2,7 +2,7 @@ All ANTLR and related code is distributed under the BSD License (http://www.antlr.org/license.html). See LICENSE.txt for more details. #DEPENDENCIES: -This grammar should build independently on any unix-compliant OS (including Unix emulators). +This grammar should build independently on any unix-compliant OS (including Unix emulators) with GCC 4.x or greater, patch, autoconf, and automake. #COMPILING 1. To compile the translator, run 'make' in the project directory Modified: translator/docs/TODO.rtf =================================================================== --- translator/docs/TODO.rtf 2009-06-24 01:20:20 UTC (rev 98) +++ translator/docs/TODO.rtf 2009-06-24 21:16:03 UTC (rev 99) @@ -22,6 +22,15 @@ \strike \strikec0 Implement a Hashtable for the symbol table(s)\strike0\striked0 \ \strike \strikec0 Add predicates to check for extern related syntax restrictions, etc.\strike0\striked0 \ \strike \strikec0 Implement error handling(/recovery?) - use flags for warning levels?\strike0\striked0 \ -\strike \strikec0 Update README\strike0\striked0 \ -Generate test data\ +\strike \strikec0 Update README\ +\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural +\cf0 \strike0\striked0 Allow threads to be declared with no initial marking\ +Debug weird cygwin memory corruption\ +dealloc the specs structure in testing\ +improve documentation\ +revert the performance hack to use updatepn\ +look at improving antlr's error handling\ +\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural +\cf0 Generate test data\ +Apparently the constraint list was supposed to be a linked list. Change to use that.\ Implement a tree walker to "balance" the equations} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mio...@us...> - 2009-06-24 01:20:22
|
Revision: 98 http://pntool.svn.sourceforge.net/pntool/?rev=98&view=rev Author: miordache Date: 2009-06-24 01:20:20 +0000 (Wed, 24 Jun 2009) Log Message: ----------- specs structure update plus specs related dealloc functions Modified Paths: -------------- pnheaders/pns.c pnheaders/pns.h Modified: pnheaders/pns.c =================================================================== --- pnheaders/pns.c 2009-06-23 20:02:29 UTC (rev 97) +++ pnheaders/pns.c 2009-06-24 01:20:20 UTC (rev 98) @@ -594,8 +594,6 @@ struct placelist *p, *q; if(pnum) { - /*if(pn->p) - free(pn->p);*/ if(pn->marking) free(pn->marking); if(pn->C) @@ -638,11 +636,101 @@ } } - DeallocateMatrix(&(pn->in)); - DeallocateMatrix(&(pn->out)); + if(pn->in.type) + DeallocateMatrix(&(pn->in)); + if(pn->out.type) + DeallocateMatrix(&(pn->out)); + + memset(pn, 0, sizeof(*pn)); + // Avoids segmentation fault if deallocpn is called again with the same parameter. + } +void dealloc_specs(specs* sp) { + int i; + if(sp->name) + free(sp->name); + if(sp->pn_num && sp->pn_array) { + for(i = 0; i < sp->pn_num; i++) + deallocpn(sp->pn_array[i]); + free(sp->pn_array); + } + if(sp->synclist) + dealloc_synclist(sp->synclist); + if(sp->constraint_list) + dealloc_constraint(sp->constraint_list); + if(sp->process_num && sp->process_array) { + for(i = 0; i < sp->process_num; i++) + dealloc_process(sp->process_array[i]); + free(sp->process_array); + } +} + + +void dealloc_synclist(syncc* s) { + syncc *s1, *s2; + + for(s1 = s; s1; ) { + s2 = s1->next; + free(s1); + s1 = s2; + } +} + +void dealloc_process(process* p) { + if(p->name) + free(p->name); + if(p->instance) + free(p->instance); + if(p->build) + free(p->build); + if(p->include) + free(p->include); +} + + +void dealloc_constraint(constraint* c) { + constraint *c1, *c2; + + for(c1 = c; c1; ) { + c2 = c1->next; + dealloc_expression(c1->expr); + free(c1); + c1 = c2; + } +} + +void dealloc_variable(variable* v) { + variable *v1, *v2; + + for(v1 = v; v1; ) { + v2 = v1->next; + free(v1); + v1 = v2; + } +} + +void dealloc_expression(expression* e) { + + if(e->left_expr) + dealloc_expression(e->left_expr); + if(e->right_expr) + dealloc_expression(e->right_expr); + if(e->left_ineq) + dealloc_inequality(e->left_ineq); + if(e->right_ineq) + dealloc_inequality(e->right_ineq); + free(e); +} + +void dealloc_inequality(inequality* in) { + if(in->variable_list) + dealloc_variable(in->variable_list); + free(in); +} + + /*************************************************************************** COMPOSEPN ****************************************************************************/ Modified: pnheaders/pns.h =================================================================== --- pnheaders/pns.h 2009-06-23 20:02:29 UTC (rev 97) +++ pnheaders/pns.h 2009-06-24 01:20:20 UTC (rev 98) @@ -1,5 +1,5 @@ -/* PNS.H -- Version 2.1 (06/17/2009) +/* PNS.H -- Version 2.1 (06/23/2009) Please refer to input2.sp describing the specification format for background information on the meaning of the data structures. */ @@ -327,18 +327,32 @@ input specs file */ int pn_num; /* reserved for future use; number of PNs */ syncc* synclist; /* list of synchronization constraints */ - constraint **constraint_array; /* each array element has the address of one - algebraic constraint */ + constraint *constraint_list; /* list of algebraic constraints */ process **process_array; /* each array element contains the address of one process object */ int process_num; /* the number of elements of the process array */ } specs; +void dealloc_specs(specs* sp); +void dealloc_process(process* p); +void dealloc_synclist(syncc* s); + +void dealloc_constraint(constraint* c); + +void dealloc_expression(expression* e); + +void dealloc_variable(variable* v); + +void dealloc_inequality(inequality* in); + +int inline is_verbose(); + specs* ScanInput(char* specs_file); -/* Scans the file and creates specs structure. */ +/* Scans the file and creates specs structure. In case of error the function + should return zero. */ int GenerateProgam(pns *supervisor, char* sname, process** prarray, int num); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2009-06-23 20:02:32
|
Revision: 97 http://pntool.svn.sourceforge.net/pntool/?rev=97&view=rev Author: thecodeweasel Date: 2009-06-23 20:02:29 +0000 (Tue, 23 Jun 2009) Log Message: ----------- Transition arcs - removing start places from the list of end places, handling the case where there are no out places Modified Paths: -------------- translator/pncompactor.c translator/pncompactor.g translator/pncompactor.h translator/pngenerator.c translator/pngenerator.g translator/pngenerator.h translator/pnscript.g translator/pnscriptLexer.c translator/pnscriptLexer.h translator/pnscriptParser.c translator/pnscriptParser.h Modified: translator/pncompactor.c =================================================================== --- translator/pncompactor.c 2009-06-23 17:45:15 UTC (rev 96) +++ translator/pncompactor.c 2009-06-23 20:02:29 UTC (rev 97) @@ -2,7 +2,7 @@ * This C source file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pncompactor.g - * - On : 2009-06-22 19:56:48 + * - On : 2009-06-23 14:50:19 * - for the tree parser : pncompactorTreeParser * * Editing it, at least manually, is not wise. * @@ -852,33 +852,33 @@ static const ANTLR3_INT32 dfa23_T0[] = { - 5 + 14 };static const ANTLR3_INT32 dfa23_T1[] = { - 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, -1, 10, - -1, 11, 11, -1, 10 + 3, -1, 7, 7 };static const ANTLR3_INT32 dfa23_T2[] = { - 3, -1, 7, 7 + 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, -1, 10, + -1, 11, 11, -1, 10 };static const ANTLR3_INT32 dfa23_T3[] = { - 8, -1, -1, -1, -1, 9 + 13 };static const ANTLR3_INT32 dfa23_T4[] = { - 14 + 6 };static const ANTLR3_INT32 dfa23_T5[] = { - 13 + 8, -1, -1, -1, -1, 9 };static const ANTLR3_INT32 dfa23_T6[] = { - 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, -1, -1, 3, -1, - -1, -1, -1, 1 + 12 };static const ANTLR3_INT32 dfa23_T7[] = { - 6 + 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, -1, -1, 3, -1, + -1, -1, -1, 1 };static const ANTLR3_INT32 dfa23_T8[] = { - 12 + 5 }; /* Transition tables are a table of sub tables, with some tables @@ -886,9 +886,9 @@ */ static const ANTLR3_INT32 * const dfa23_transitions[] = { - dfa23_T6, dfa23_T0, dfa23_T_empty, dfa23_T_empty, dfa23_T7, dfa23_T2, - dfa23_T3, dfa23_T_empty, dfa23_T1, dfa23_T8, dfa23_T_empty, dfa23_T_empty, - dfa23_T5, dfa23_T4, dfa23_T1 + dfa23_T7, dfa23_T8, dfa23_T_empty, dfa23_T_empty, dfa23_T4, dfa23_T1, + dfa23_T5, dfa23_T_empty, dfa23_T2, dfa23_T6, dfa23_T_empty, dfa23_T_empty, + dfa23_T3, dfa23_T0, dfa23_T2 }; @@ -1876,7 +1876,7 @@ /** * $ANTLR start trans_def - * /Users/bion/projects/iordache/translator/pncompactor.g:44:1: trans_def : ( ^( ID CODE_BLOCK ) | ^( ID ( ID )+ ( CODE_BLOCK )? ) | ^( ID ^( ID ( ID )+ ( CODE_BLOCK )? ) ) ); + * /Users/bion/projects/iordache/translator/pncompactor.g:44:1: trans_def : ( ^( ID CODE_BLOCK ) | ^( ID ( ID )+ ( CODE_BLOCK )? ) | ^( ID ^( ID ( ID )* ( CODE_BLOCK )? ) ) ); */ static pncompactor_trans_def_return trans_def(ppncompactor ctx) @@ -1944,7 +1944,7 @@ retval.tree = NULL; { { - // /Users/bion/projects/iordache/translator/pncompactor.g:45:2: ( ^( ID CODE_BLOCK ) | ^( ID ( ID )+ ( CODE_BLOCK )? ) | ^( ID ^( ID ( ID )+ ( CODE_BLOCK )? ) ) ) + // /Users/bion/projects/iordache/translator/pncompactor.g:45:2: ( ^( ID CODE_BLOCK ) | ^( ID ( ID )+ ( CODE_BLOCK )? ) | ^( ID ^( ID ( ID )* ( CODE_BLOCK )? ) ) ) ANTLR3_UINT32 alt14; @@ -2196,7 +2196,7 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pncompactor.g:47:4: ^( ID ^( ID ( ID )+ ( CODE_BLOCK )? ) ) + // /Users/bion/projects/iordache/translator/pncompactor.g:47:4: ^( ID ^( ID ( ID )* ( CODE_BLOCK )? ) ) { root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); @@ -2239,94 +2239,83 @@ - MATCHT(ANTLR3_TOKEN_DOWN, NULL); - // /Users/bion/projects/iordache/translator/pncompactor.g:47:14: ( ID )+ - { - int cnt12=0; + if ( LA(1)==ANTLR3_TOKEN_DOWN ) { + MATCHT(ANTLR3_TOKEN_DOWN, NULL); + // /Users/bion/projects/iordache/translator/pncompactor.g:47:14: ( ID )* + for (;;) { int alt12=2; - { - /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState) - */ - int LA12_0 = LA(1); - if ( (LA12_0 == ID) ) - { - alt12=1; - } + { + /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState) + */ + int LA12_0 = LA(1); + if ( (LA12_0 == ID) ) + { + alt12=1; + } - } - switch (alt12) - { - case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:47:14: ID - { - _last = (pANTLR3_BASE_TREE)LT(1); - ID21 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def198); - if (HASEXCEPTION()) - { - goto ruletrans_defEx; - } + } + switch (alt12) + { + case 1: + // /Users/bion/projects/iordache/translator/pncompactor.g:47:14: ID + { + _last = (pANTLR3_BASE_TREE)LT(1); + ID21 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def198); + if (HASEXCEPTION()) + { + goto ruletrans_defEx; + } - ID21_tree = (pANTLR3_BASE_TREE)ADAPTOR->dupNode(ADAPTOR, ID21);ADAPTOR->addChild(ADAPTOR, root_2, ID21_tree); + ID21_tree = (pANTLR3_BASE_TREE)ADAPTOR->dupNode(ADAPTOR, ID21);ADAPTOR->addChild(ADAPTOR, root_2, ID21_tree); - } - break; + } + break; - default: - - if ( cnt12 >= 1 ) - { - goto loop12; - } - /* mismatchedSetEx() - */ - CONSTRUCTEX(); - EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION; - EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME; - - - goto ruletrans_defEx; - } - cnt12++; + default: + goto loop12; /* break out of the loop */ + break; + } } - loop12: ; /* Jump to here if this rule does not match */ - } + loop12: ; /* Jump out to here if this rule does not match */ - // /Users/bion/projects/iordache/translator/pncompactor.g:47:18: ( CODE_BLOCK )? - { - int alt13=2; + + // /Users/bion/projects/iordache/translator/pncompactor.g:47:18: ( CODE_BLOCK )? { - int LA13_0 = LA(1); - if ( (LA13_0 == CODE_BLOCK) ) + int alt13=2; { - alt13=1; + int LA13_0 = LA(1); + if ( (LA13_0 == CODE_BLOCK) ) + { + alt13=1; + } } - } - switch (alt13) - { - case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:47:18: CODE_BLOCK - { - _last = (pANTLR3_BASE_TREE)LT(1); - CODE_BLOCK22 = (pANTLR3_BASE_TREE) MATCHT(CODE_BLOCK, &FOLLOW_CODE_BLOCK_in_trans_def201); - if (HASEXCEPTION()) - { - goto ruletrans_defEx; - } + switch (alt13) + { + case 1: + // /Users/bion/projects/iordache/translator/pncompactor.g:47:18: CODE_BLOCK + { + _last = (pANTLR3_BASE_TREE)LT(1); + CODE_BLOCK22 = (pANTLR3_BASE_TREE) MATCHT(CODE_BLOCK, &FOLLOW_CODE_BLOCK_in_trans_def201); + if (HASEXCEPTION()) + { + goto ruletrans_defEx; + } - CODE_BLOCK22_tree = (pANTLR3_BASE_TREE)ADAPTOR->dupNode(ADAPTOR, CODE_BLOCK22);ADAPTOR->addChild(ADAPTOR, root_2, CODE_BLOCK22_tree); + CODE_BLOCK22_tree = (pANTLR3_BASE_TREE)ADAPTOR->dupNode(ADAPTOR, CODE_BLOCK22);ADAPTOR->addChild(ADAPTOR, root_2, CODE_BLOCK22_tree); - } - break; + } + break; + } } - } - MATCHT(ANTLR3_TOKEN_UP, NULL); ADAPTOR->addChild(ADAPTOR, root_1, root_2);_last = _save_last_2; + MATCHT(ANTLR3_TOKEN_UP, NULL); + }ADAPTOR->addChild(ADAPTOR, root_1, root_2);_last = _save_last_2; } @@ -4178,19 +4167,19 @@ /* AST REWRITE - * elements : add2, add1, add1, add2 + * elements : add1, add2, add1, add2 * token labels : - * rule labels : add1, add2, retval + * rule labels : add2, add1, retval * token list labels : * rule list labels : */ { - pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add1; pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add2; + pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add1; pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval; - stream_add1=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add1", add1.tree != NULL ? add1.tree : NULL); stream_add2=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add2", add2.tree != NULL ? add2.tree : NULL); + stream_add1=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add1", add1.tree != NULL ? add1.tree : NULL); stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL); root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); @@ -4238,8 +4227,8 @@ } retval.tree = root_0; // set result root - if (stream_add1 != NULL) stream_add1->free(stream_add1); if (stream_add2 != NULL) stream_add2->free(stream_add2); + if (stream_add1 != NULL) stream_add1->free(stream_add1); if (stream_retval != NULL) stream_retval->free(stream_retval); @@ -4324,19 +4313,19 @@ /* AST REWRITE - * elements : add1, add2, add1, add2 + * elements : add2, add2, add1, add1 * token labels : - * rule labels : add2, add1, retval + * rule labels : add1, add2, retval * token list labels : * rule list labels : */ { - pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add2; pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add1; + pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_add2; pANTLR3_REWRITE_RULE_SUBTREE_STREAM stream_retval; - stream_add2=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add2", add2.tree != NULL ? add2.tree : NULL); stream_add1=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add1", add1.tree != NULL ? add1.tree : NULL); + stream_add2=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token add2", add2.tree != NULL ? add2.tree : NULL); stream_retval=antlr3RewriteRuleSubtreeStreamNewAEE(ADAPTOR, RECOGNIZER, (pANTLR3_UINT8)"token retval", retval.tree != NULL ? retval.tree : NULL); root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); @@ -4384,8 +4373,8 @@ } retval.tree = root_0; // set result root - if (stream_add2 != NULL) stream_add2->free(stream_add2); if (stream_add1 != NULL) stream_add1->free(stream_add1); + if (stream_add2 != NULL) stream_add2->free(stream_add2); if (stream_retval != NULL) stream_retval->free(stream_retval); @@ -4784,7 +4773,7 @@ /* AST REWRITE - * elements : number, MULT, primary + * elements : primary, MULT, number * token labels : * rule labels : retval * token list labels : Modified: translator/pncompactor.g =================================================================== --- translator/pncompactor.g 2009-06-23 17:45:15 UTC (rev 96) +++ translator/pncompactor.g 2009-06-23 20:02:29 UTC (rev 97) @@ -44,7 +44,7 @@ trans_def : ^(ID CODE_BLOCK) | ^(ID ID+ CODE_BLOCK?) - | ^(ID ^(ID ID+ CODE_BLOCK?)); + | ^(ID ^(ID ID* CODE_BLOCK?)); select_functions : ^(SELECT_DEF ID CODE_BLOCK); nondeterm Modified: translator/pncompactor.h =================================================================== --- translator/pncompactor.h 2009-06-23 17:45:15 UTC (rev 96) +++ translator/pncompactor.h 2009-06-23 20:02:29 UTC (rev 97) @@ -2,7 +2,7 @@ * This C header file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pncompactor.g - * - On : 2009-06-22 19:56:48 + * - On : 2009-06-23 14:50:19 * - for the tree parser : pncompactorTreeParser * * Editing it, at least manually, is not wise. * Modified: translator/pngenerator.c =================================================================== --- translator/pngenerator.c 2009-06-23 17:45:15 UTC (rev 96) +++ translator/pngenerator.c 2009-06-23 20:02:29 UTC (rev 97) @@ -2,7 +2,7 @@ * This C source file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pngenerator.g - * - On : 2009-06-23 11:07:49 + * - On : 2009-06-23 15:01:05 * - for the tree parser : pngeneratorTreeParser * * Editing it, at least manually, is not wise. * @@ -1990,7 +1990,7 @@ /** * $ANTLR start trans_def - * /Users/bion/projects/iordache/translator/pngenerator.g:209:1: trans_def : ( ^( ID CODE_BLOCK ) | ^(tran= ID (place= ID )+ ( CODE_BLOCK )? ) | ^(tran= ID ^(pInit= ID (place= ID )+ ( CODE_BLOCK )? ) ) ); + * /Users/bion/projects/iordache/translator/pngenerator.g:209:1: trans_def : ( ^( ID CODE_BLOCK ) | ^(tran= ID (place= ID )+ ( CODE_BLOCK )? ) | ^(tran= ID ^(pInit= ID (place= ID )* ( CODE_BLOCK )? ) ) ); */ static void trans_def(ppngenerator ctx) @@ -2015,6 +2015,7 @@ static arcs* arcs; currentPlace = tmalloc(sizeof(struct placelist)); + currentPlace->place = -1; places = currentPlace; arcs = tmalloc(sizeof(arcs)); arcs->next = 0; //I'm not even sure what a next arc would mean... @@ -2029,7 +2030,7 @@ { { - // /Users/bion/projects/iordache/translator/pngenerator.g:222:2: ( ^( ID CODE_BLOCK ) | ^(tran= ID (place= ID )+ ( CODE_BLOCK )? ) | ^(tran= ID ^(pInit= ID (place= ID )+ ( CODE_BLOCK )? ) ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:223:2: ( ^( ID CODE_BLOCK ) | ^(tran= ID (place= ID )+ ( CODE_BLOCK )? ) | ^(tran= ID ^(pInit= ID (place= ID )* ( CODE_BLOCK )? ) ) ) ANTLR3_UINT32 alt15; @@ -2123,7 +2124,7 @@ switch (alt15) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:222:4: ^( ID CODE_BLOCK ) + // /Users/bion/projects/iordache/translator/pngenerator.g:223:4: ^( ID CODE_BLOCK ) { ID5 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def181); if (HASEXCEPTION()) @@ -2164,7 +2165,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:230:4: ^(tran= ID (place= ID )+ ( CODE_BLOCK )? ) + // /Users/bion/projects/iordache/translator/pngenerator.g:231:4: ^(tran= ID (place= ID )+ ( CODE_BLOCK )? ) { tran = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def197); if (HASEXCEPTION()) @@ -2185,7 +2186,7 @@ goto ruletrans_defEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:232:5: (place= ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:233:5: (place= ID )+ { int cnt11=0; @@ -2205,7 +2206,7 @@ switch (alt11) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:232:6: place= ID + // /Users/bion/projects/iordache/translator/pngenerator.g:233:6: place= ID { place = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def204); if (HASEXCEPTION()) @@ -2248,13 +2249,17 @@ } { - free(lastPlace->next); - lastPlace->next = 0; - arcs->out_places = places; + if(places->place != -1) { + free(lastPlace->next); + lastPlace->next = 0; + arcs->out_places = places; + } else { + arcs->out_places = 0; + } } - // /Users/bion/projects/iordache/translator/pngenerator.g:243:5: ( CODE_BLOCK )? + // /Users/bion/projects/iordache/translator/pngenerator.g:248:5: ( CODE_BLOCK )? { int alt12=2; { @@ -2267,7 +2272,7 @@ switch (alt12) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:243:6: CODE_BLOCK + // /Users/bion/projects/iordache/translator/pngenerator.g:248:6: CODE_BLOCK { CODE_BLOCK7 = (pANTLR3_BASE_TREE) MATCHT(CODE_BLOCK, &FOLLOW_CODE_BLOCK_in_trans_def213); if (HASEXCEPTION()) @@ -2302,7 +2307,7 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pngenerator.g:249:4: ^(tran= ID ^(pInit= ID (place= ID )+ ( CODE_BLOCK )? ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:254:4: ^(tran= ID ^(pInit= ID (place= ID )* ( CODE_BLOCK )? ) ) { tran = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def231); if (HASEXCEPTION()) @@ -2336,126 +2341,116 @@ } - MATCHT(ANTLR3_TOKEN_DOWN, NULL); - if (HASEXCEPTION()) - { - goto ruletrans_defEx; - } + if ( LA(1)==ANTLR3_TOKEN_DOWN ) { + MATCHT(ANTLR3_TOKEN_DOWN, NULL); + if (HASEXCEPTION()) + { + goto ruletrans_defEx; + } - // /Users/bion/projects/iordache/translator/pngenerator.g:253:5: (place= ID )+ - { - int cnt13=0; + // /Users/bion/projects/iordache/translator/pngenerator.g:258:5: (place= ID )* + for (;;) { int alt13=2; - { - /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState) - */ - int LA13_0 = LA(1); - if ( (LA13_0 == ID) ) - { - alt13=1; - } + { + /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState) + */ + int LA13_0 = LA(1); + if ( (LA13_0 == ID) ) + { + alt13=1; + } - } - switch (alt13) - { - case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:253:6: place= ID - { - place = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def245); - if (HASEXCEPTION()) - { - goto ruletrans_defEx; - } + } + switch (alt13) + { + case 1: + // /Users/bion/projects/iordache/translator/pngenerator.g:258:6: place= ID + { + place = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_trans_def245); + if (HASEXCEPTION()) + { + goto ruletrans_defEx; + } - { + { - static int pNum; - pNum = *((int*) (SCOPE_TOP(proc_definitions))->places->get( (SCOPE_TOP(proc_definitions))->places, (char*) (place->getText(place))->chars)); - currentPlace->place = pNum; - currentPlace->next = tmalloc(sizeof(struct placelist)); - lastPlace = currentPlace; - currentPlace = currentPlace->next; - - } + static int pNum; + pNum = *((int*) (SCOPE_TOP(proc_definitions))->places->get( (SCOPE_TOP(proc_definitions))->places, (char*) (place->getText(place))->chars)); + currentPlace->place = pNum; + currentPlace->next = tmalloc(sizeof(struct placelist)); + lastPlace = currentPlace; + currentPlace = currentPlace->next; + + } - } - break; + } + break; - default: - - if ( cnt13 >= 1 ) - { - goto loop13; - } - /* mismatchedSetEx() - */ - CONSTRUCTEX(); - EXCEPTION->type = ANTLR3_EARLY_EXIT_EXCEPTION; - EXCEPTION->name = (void *)ANTLR3_EARLY_EXIT_NAME; + default: + goto loop13; /* break out of the loop */ + break; + } + } + loop13: ; /* Jump out to here if this rule does not match */ + { - goto ruletrans_defEx; - } - cnt13++; + if(lastPlace->next != NULL) + free(lastPlace->next); + lastPlace->next = 0; + arcs->out_places = places; + } - loop13: ; /* Jump to here if this rule does not match */ - } - { - free(lastPlace->next); - lastPlace->next = 0; - arcs->out_places = places; - - } - - // /Users/bion/projects/iordache/translator/pngenerator.g:264:5: ( CODE_BLOCK )? - { - int alt14=2; + // /Users/bion/projects/iordache/translator/pngenerator.g:270:5: ( CODE_BLOCK )? { - int LA14_0 = LA(1); - if ( (LA14_0 == CODE_BLOCK) ) + int alt14=2; { - alt14=1; + int LA14_0 = LA(1); + if ( (LA14_0 == CODE_BLOCK) ) + { + alt14=1; + } } - } - switch (alt14) - { - case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:264:6: CODE_BLOCK - { - CODE_BLOCK8 = (pANTLR3_BASE_TREE) MATCHT(CODE_BLOCK, &FOLLOW_CODE_BLOCK_in_trans_def254); - if (HASEXCEPTION()) - { - goto ruletrans_defEx; - } + switch (alt14) + { + case 1: + // /Users/bion/projects/iordache/translator/pngenerator.g:270:6: CODE_BLOCK + { + CODE_BLOCK8 = (pANTLR3_BASE_TREE) MATCHT(CODE_BLOCK, &FOLLOW_CODE_BLOCK_in_trans_def254); + if (HASEXCEPTION()) + { + goto ruletrans_defEx; + } - { + { - arcs->condition = (char*) (CODE_BLOCK8->getText(CODE_BLOCK8))->chars; - - } + arcs->condition = (char*) (CODE_BLOCK8->getText(CODE_BLOCK8))->chars; + + } - } - break; + } + break; + } } - } - { + { - updatepn( (SCOPE_TOP(proc_definitions))->proc->pn, "arcs", trans, arcs); - - } + updatepn( (SCOPE_TOP(proc_definitions))->proc->pn, "arcs", trans, arcs); + + } - MATCHT(ANTLR3_TOKEN_UP, NULL); - if (HASEXCEPTION()) - { - goto ruletrans_defEx; + MATCHT(ANTLR3_TOKEN_UP, NULL); + if (HASEXCEPTION()) + { + goto ruletrans_defEx; + } + } - MATCHT(ANTLR3_TOKEN_UP, NULL); if (HASEXCEPTION()) { @@ -2488,7 +2483,7 @@ /** * $ANTLR start select_functions - * /Users/bion/projects/iordache/translator/pngenerator.g:269:1: select_functions : ^( SELECT_DEF ID CODE_BLOCK ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:275:1: select_functions : ^( SELECT_DEF ID CODE_BLOCK ) ; */ static void select_functions(ppngenerator ctx) @@ -2504,8 +2499,8 @@ CODE_BLOCK10 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:270:2: ( ^( SELECT_DEF ID CODE_BLOCK ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:270:4: ^( SELECT_DEF ID CODE_BLOCK ) + // /Users/bion/projects/iordache/translator/pngenerator.g:276:2: ( ^( SELECT_DEF ID CODE_BLOCK ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:276:4: ^( SELECT_DEF ID CODE_BLOCK ) { MATCHT(SELECT_DEF, &FOLLOW_SELECT_DEF_in_select_functions271); if (HASEXCEPTION()) @@ -2571,7 +2566,7 @@ /** * $ANTLR start nondeterm - * /Users/bion/projects/iordache/translator/pngenerator.g:277:1: nondeterm : ^( 'nondeterministic places: ' ( ID )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:283:1: nondeterm : ^( 'nondeterministic places: ' ( ID )+ ) ; */ static void nondeterm(ppngenerator ctx) @@ -2585,8 +2580,8 @@ ID11 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:278:2: ( ^( 'nondeterministic places: ' ( ID )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:278:4: ^( 'nondeterministic places: ' ( ID )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:284:2: ( ^( 'nondeterministic places: ' ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:284:4: ^( 'nondeterministic places: ' ( ID )+ ) { MATCHT(45, &FOLLOW_45_in_nondeterm288); if (HASEXCEPTION()) @@ -2601,7 +2596,7 @@ goto rulenondetermEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:278:34: ( ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:284:34: ( ID )+ { int cnt16=0; @@ -2621,7 +2616,7 @@ switch (alt16) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:278:35: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:284:35: ID { ID11 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_nondeterm291); if (HASEXCEPTION()) @@ -2689,7 +2684,7 @@ /** * $ANTLR start proc_instantiations - * /Users/bion/projects/iordache/translator/pngenerator.g:284:1: proc_instantiations : ( proc_init | sync_def | proc_start ); + * /Users/bion/projects/iordache/translator/pngenerator.g:290:1: proc_instantiations : ( proc_init | sync_def | proc_start ); */ static void proc_instantiations(ppngenerator ctx) @@ -2700,7 +2695,7 @@ ctx->ppngenerator_proc_instantiationsTop = ppngenerator_proc_instantiationsPush(ctx); { { - // /Users/bion/projects/iordache/translator/pngenerator.g:290:2: ( proc_init | sync_def | proc_start ) + // /Users/bion/projects/iordache/translator/pngenerator.g:296:2: ( proc_init | sync_def | proc_start ) ANTLR3_UINT32 alt17; @@ -2738,7 +2733,7 @@ switch (alt17) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:290:4: proc_init + // /Users/bion/projects/iordache/translator/pngenerator.g:296:4: proc_init { FOLLOWPUSH(FOLLOW_proc_init_in_proc_instantiations310); proc_init(ctx); @@ -2753,7 +2748,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:290:16: sync_def + // /Users/bion/projects/iordache/translator/pngenerator.g:296:16: sync_def { FOLLOWPUSH(FOLLOW_sync_def_in_proc_instantiations314); sync_def(ctx); @@ -2768,7 +2763,7 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pngenerator.g:290:27: proc_start + // /Users/bion/projects/iordache/translator/pngenerator.g:296:27: proc_start { FOLLOWPUSH(FOLLOW_proc_start_in_proc_instantiations318); proc_start(ctx); @@ -2807,7 +2802,7 @@ /** * $ANTLR start proc_init - * /Users/bion/projects/iordache/translator/pngenerator.g:291:1: proc_init : ^( ID ( numbered_ID[$proc_instantiations::places] )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:297:1: proc_init : ^( ID ( numbered_ID[$proc_instantiations::places] )+ ) ; */ static void proc_init(ppngenerator ctx) @@ -2830,8 +2825,8 @@ numbered_ID13 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:297:2: ( ^( ID ( numbered_ID[$proc_instantiations::places] )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:297:4: ^( ID ( numbered_ID[$proc_instantiations::places] )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:303:2: ( ^( ID ( numbered_ID[$proc_instantiations::places] )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:303:4: ^( ID ( numbered_ID[$proc_instantiations::places] )+ ) { ID12 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_proc_init333); if (HASEXCEPTION()) @@ -2859,7 +2854,7 @@ goto ruleproc_initEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:306:5: ( numbered_ID[$proc_instantiations::places] )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:312:5: ( numbered_ID[$proc_instantiations::places] )+ { int cnt18=0; @@ -2879,7 +2874,7 @@ switch (alt18) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:306:6: numbered_ID[$proc_instantiations::places] + // /Users/bion/projects/iordache/translator/pngenerator.g:312:6: numbered_ID[$proc_instantiations::places] { FOLLOWPUSH(FOLLOW_numbered_ID_in_proc_init338); numbered_ID13=numbered_ID(ctx, (SCOPE_TOP(proc_instantiations))->places); @@ -2966,7 +2961,7 @@ /** * $ANTLR start sync_def - * /Users/bion/projects/iordache/translator/pngenerator.g:324:1: sync_def : ^( SYNC_TOK ( group_elements )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:330:1: sync_def : ^( SYNC_TOK ( group_elements )+ ) ; */ static void sync_def(ppngenerator ctx) @@ -2986,8 +2981,8 @@ group_elements14 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:329:2: ( ^( SYNC_TOK ( group_elements )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:329:4: ^( SYNC_TOK ( group_elements )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:335:2: ( ^( SYNC_TOK ( group_elements )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:335:4: ^( SYNC_TOK ( group_elements )+ ) { MATCHT(SYNC_TOK, &FOLLOW_SYNC_TOK_in_sync_def361); if (HASEXCEPTION()) @@ -3002,7 +2997,7 @@ goto rulesync_defEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:329:15: ( group_elements )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:335:15: ( group_elements )+ { int cnt19=0; @@ -3022,7 +3017,7 @@ switch (alt19) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:329:16: group_elements + // /Users/bion/projects/iordache/translator/pngenerator.g:335:16: group_elements { FOLLOWPUSH(FOLLOW_group_elements_in_sync_def364); group_elements14=group_elements(ctx); @@ -3139,7 +3134,7 @@ /** * $ANTLR start proc_start - * /Users/bion/projects/iordache/translator/pngenerator.g:377:1: proc_start : ^( START ( ID )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:383:1: proc_start : ^( START ( ID )+ ) ; */ static void proc_start(ppngenerator ctx) @@ -3153,8 +3148,8 @@ ID15 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:378:2: ( ^( START ( ID )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:378:4: ^( START ( ID )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:384:2: ( ^( START ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:384:4: ^( START ( ID )+ ) { MATCHT(START, &FOLLOW_START_in_proc_start381); if (HASEXCEPTION()) @@ -3169,7 +3164,7 @@ goto ruleproc_startEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:378:12: ( ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:384:12: ( ID )+ { int cnt20=0; @@ -3189,7 +3184,7 @@ switch (alt20) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:378:13: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:384:13: ID { ID15 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_proc_start384); if (HASEXCEPTION()) @@ -3259,7 +3254,7 @@ /** * $ANTLR start constraints - * /Users/bion/projects/iordache/translator/pngenerator.g:386:1: constraints : ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:392:1: constraints : ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) ; */ static void constraints(ppngenerator ctx) @@ -3273,8 +3268,8 @@ ctx->ppngenerator_constraintsTop = ppngenerator_constraintsPush(ctx); { - // /Users/bion/projects/iordache/translator/pngenerator.g:392:2: ( ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:392:4: ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) + // /Users/bion/projects/iordache/translator/pngenerator.g:398:2: ( ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:398:4: ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) { FOLLOWPUSH(FOLLOW_constraint_block_in_constraints404); constraint_block(ctx); @@ -3294,7 +3289,7 @@ } - // /Users/bion/projects/iordache/translator/pngenerator.g:392:23: ( ( eq ) | live_def | uncontrol | unobserve )* + // /Users/bion/projects/iordache/translator/pngenerator.g:398:23: ( ( eq ) | live_def | uncontrol | unobserve )* for (;;) { @@ -3328,10 +3323,10 @@ switch (alt21) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:392:24: ( eq ) + // /Users/bion/projects/iordache/translator/pngenerator.g:398:24: ( eq ) { - // /Users/bion/projects/iordache/translator/pngenerator.g:392:24: ( eq ) - // /Users/bion/projects/iordache/translator/pngenerator.g:392:25: eq + // /Users/bion/projects/iordache/translator/pngenerator.g:398:24: ( eq ) + // /Users/bion/projects/iordache/translator/pngenerator.g:398:25: eq { FOLLOWPUSH(FOLLOW_eq_in_constraints408); eq16=eq(ctx); @@ -3355,7 +3350,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:395:6: live_def + // /Users/bion/projects/iordache/translator/pngenerator.g:401:6: live_def { FOLLOWPUSH(FOLLOW_live_def_in_constraints413); live_def(ctx); @@ -3370,7 +3365,7 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pngenerator.g:395:15: uncontrol + // /Users/bion/projects/iordache/translator/pngenerator.g:401:15: uncontrol { FOLLOWPUSH(FOLLOW_uncontrol_in_constraints415); uncontrol(ctx); @@ -3385,7 +3380,7 @@ } break; case 4: - // /Users/bion/projects/iordache/translator/pngenerator.g:395:25: unobserve + // /Users/bion/projects/iordache/translator/pngenerator.g:401:25: unobserve { FOLLOWPUSH(FOLLOW_unobserve_in_constraints417); unobserve(ctx); @@ -3440,7 +3435,7 @@ /** * $ANTLR start constraint_block - * /Users/bion/projects/iordache/translator/pngenerator.g:396:1: constraint_block : ID ; + * /Users/bion/projects/iordache/translator/pngenerator.g:402:1: constraint_block : ID ; */ static void constraint_block(ppngenerator ctx) @@ -3454,8 +3449,8 @@ ID17 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:397:2: ( ID ) - // /Users/bion/projects/iordache/translator/pngenerator.g:397:4: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:403:2: ( ID ) + // /Users/bion/projects/iordache/translator/pngenerator.g:403:4: ID { ID17 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_constraint_block428); if (HASEXCEPTION()) @@ -3504,7 +3499,7 @@ /** * $ANTLR start eq - * /Users/bion/projects/iordache/translator/pngenerator.g:413:1: eq returns [bool ineq, void* ret] : ( relationalExpression | ^( EQS_OP leq= eq req= eq ) ); + * /Users/bion/projects/iordache/translator/pngenerator.g:419:1: eq returns [bool ineq, void* ret] : ( relationalExpression | ^( EQS_OP leq= eq req= eq ) ); */ static pngenerator_eq_return eq(ppngenerator ctx) @@ -3537,7 +3532,7 @@ { { - // /Users/bion/projects/iordache/translator/pngenerator.g:417:2: ( relationalExpression | ^( EQS_OP leq= eq req= eq ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:423:2: ( relationalExpression | ^( EQS_OP leq= eq req= eq ) ) ANTLR3_UINT32 alt22; @@ -3570,7 +3565,7 @@ switch (alt22) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:417:4: relationalExpression + // /Users/bion/projects/iordache/translator/pngenerator.g:423:4: relationalExpression { FOLLOWPUSH(FOLLOW_relationalExpression_in_eq448); relationalExpression18=relationalExpression(ctx); @@ -3588,7 +3583,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:418:4: ^( EQS_OP leq= eq req= eq ) + // /Users/bion/projects/iordache/translator/pngenerator.g:424:4: ^( EQS_OP leq= eq req= eq ) { MATCHT(EQS_OP, &FOLLOW_EQS_OP_in_eq456); if (HASEXCEPTION()) @@ -3681,7 +3676,7 @@ /** * $ANTLR start relationalExpression - * /Users/bion/projects/iordache/translator/pngenerator.g:435:1: relationalExpression returns [inequality* ret] : ^( EQ_OP additiveExpression[list, false] NUM ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:441:1: relationalExpression returns [inequality* ret] : ^( EQ_OP additiveExpression[list, false] NUM ) ; */ static inequality* relationalExpression(ppngenerator ctx) @@ -3704,8 +3699,8 @@ NUM19 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:443:5: ( ^( EQ_OP additiveExpression[list, false] NUM ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:443:9: ^( EQ_OP additiveExpression[list, false] NUM ) + // /Users/bion/projects/iordache/translator/pngenerator.g:449:5: ( ^( EQ_OP additiveExpression[list, false] NUM ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:449:9: ^( EQ_OP additiveExpression[list, false] NUM ) { MATCHT(EQ_OP, &FOLLOW_EQ_OP_in_relationalExpression499); if (HASEXCEPTION()) @@ -3779,7 +3774,7 @@ /** * $ANTLR start additiveExpression - * /Users/bion/projects/iordache/translator/pngenerator.g:456:1: additiveExpression[pANTLR3_VECTOR list, bool flip] : ( primary[flip] | ^( ADD additiveExpression[list, false] additiveExpression[list, false] ) | ^( SUB additiveExpression[list, false] additiveExpression[list, true] ) ); + * /Users/bion/projects/iordache/translator/pngenerator.g:462:1: additiveExpression[pANTLR3_VECTOR list, bool flip] : ( primary[flip] | ^( ADD additiveExpression[list, false] additiveExpression[list, false] ) | ^( SUB additiveExpression[list, false] additiveExpression[list, true] ) ); */ static void additiveExpression(ppngenerator ctx, pANTLR3_VECTOR list, bool flip) @@ -3796,7 +3791,7 @@ { { - // /Users/bion/projects/iordache/translator/pngenerator.g:457:5: ( primary[flip] | ^( ADD additiveExpression[list, false] additiveExpression[list, false] ) | ^( SUB additiveExpression[list, false] additiveExpression[list, true] ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:463:5: ( primary[flip] | ^( ADD additiveExpression[list, false] additiveExpression[list, false] ) | ^( SUB additiveExpression[list, false] additiveExpression[list, true] ) ) ANTLR3_UINT32 alt23; @@ -3835,7 +3830,7 @@ switch (alt23) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:457:9: primary[flip] + // /Users/bion/projects/iordache/translator/pngenerator.g:463:9: primary[flip] { FOLLOWPUSH(FOLLOW_primary_in_additiveExpression523); primary20=primary(ctx, flip); @@ -3853,7 +3848,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:458:7: ^( ADD additiveExpression[list, false] additiveExpression[list, false] ) + // /Users/bion/projects/iordache/translator/pngenerator.g:464:7: ^( ADD additiveExpression[list, false] additiveExpression[list, false] ) { MATCHT(ADD, &FOLLOW_ADD_in_additiveExpression535); if (HASEXCEPTION()) @@ -3897,7 +3892,7 @@ } break; case 3: - // /Users/bion/projects/iordache/translator/pngenerator.g:459:7: ^( SUB additiveExpression[list, false] additiveExpression[list, true] ) + // /Users/bion/projects/iordache/translator/pngenerator.g:465:7: ^( SUB additiveExpression[list, false] additiveExpression[list, true] ) { MATCHT(SUB, &FOLLOW_SUB_in_additiveExpression551); if (HASEXCEPTION()) @@ -3963,7 +3958,7 @@ /** * $ANTLR start primary - * /Users/bion/projects/iordache/translator/pngenerator.g:461:1: primary[bool flip] returns [variable* var] : ( group_elements | ^( MULT NUM group_elements ) ); + * /Users/bion/projects/iordache/translator/pngenerator.g:467:1: primary[bool flip] returns [variable* var] : ( group_elements | ^( MULT NUM group_elements ) ); */ static variable* primary(ppngenerator ctx, bool flip) @@ -3989,7 +3984,7 @@ { { - // /Users/bion/projects/iordache/translator/pngenerator.g:462:5: ( group_elements | ^( MULT NUM group_elements ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:468:5: ( group_elements | ^( MULT NUM group_elements ) ) ANTLR3_UINT32 alt24; @@ -4022,7 +4017,7 @@ switch (alt24) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:462:9: group_elements + // /Users/bion/projects/iordache/translator/pngenerator.g:468:9: group_elements { FOLLOWPUSH(FOLLOW_group_elements_in_primary578); group_elements21=group_elements(ctx); @@ -4046,7 +4041,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:469:7: ^( MULT NUM group_elements ) + // /Users/bion/projects/iordache/translator/pngenerator.g:475:7: ^( MULT NUM group_elements ) { MATCHT(MULT, &FOLLOW_MULT_in_primary589); if (HASEXCEPTION()) @@ -4118,7 +4113,7 @@ /** * $ANTLR start live_def - * /Users/bion/projects/iordache/translator/pngenerator.g:476:1: live_def : ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ); + * /Users/bion/projects/iordache/translator/pngenerator.g:482:1: live_def : ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ); */ static void live_def(ppngenerator ctx) @@ -4135,7 +4130,7 @@ { { - // /Users/bion/projects/iordache/translator/pngenerator.g:477:2: ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:483:2: ( ^( LIVE ALL ( ID )* ) | ^( LIVE ( ID )+ ) ) ANTLR3_UINT32 alt27; @@ -4206,7 +4201,7 @@ switch (alt27) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:477:4: ^( LIVE ALL ( ID )* ) + // /Users/bion/projects/iordache/translator/pngenerator.g:483:4: ^( LIVE ALL ( ID )* ) { MATCHT(LIVE, &FOLLOW_LIVE_in_live_def606); if (HASEXCEPTION()) @@ -4241,7 +4236,7 @@ } - // /Users/bion/projects/iordache/translator/pngenerator.g:487:5: ( ID )* + // /Users/bion/projects/iordache/translator/pngenerator.g:493:5: ( ID )* for (;;) { @@ -4259,7 +4254,7 @@ switch (alt25) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:487:6: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:493:6: ID { ID24 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_live_def613); if (HASEXCEPTION()) @@ -4297,7 +4292,7 @@ } break; case 2: - // /Users/bion/projects/iordache/translator/pngenerator.g:493:4: ^( LIVE ( ID )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:499:4: ^( LIVE ( ID )+ ) { MATCHT(LIVE, &FOLLOW_LIVE_in_live_def624); if (HASEXCEPTION()) @@ -4312,7 +4307,7 @@ goto rulelive_defEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:493:11: ( ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:499:11: ( ID )+ { int cnt26=0; @@ -4332,7 +4327,7 @@ switch (alt26) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:493:12: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:499:12: ID { ID25 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_live_def627); if (HASEXCEPTION()) @@ -4403,7 +4398,7 @@ /** * $ANTLR start uncontrol - * /Users/bion/projects/iordache/translator/pngenerator.g:498:1: uncontrol : ^( UNCONTROL ( ID )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:504:1: uncontrol : ^( UNCONTROL ( ID )+ ) ; */ static void uncontrol(ppngenerator ctx) @@ -4417,8 +4412,8 @@ ID26 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:499:2: ( ^( UNCONTROL ( ID )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:499:4: ^( UNCONTROL ( ID )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:505:2: ( ^( UNCONTROL ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:505:4: ^( UNCONTROL ( ID )+ ) { MATCHT(UNCONTROL, &FOLLOW_UNCONTROL_in_uncontrol642); if (HASEXCEPTION()) @@ -4433,7 +4428,7 @@ goto ruleuncontrolEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:499:16: ( ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:505:16: ( ID )+ { int cnt28=0; @@ -4453,7 +4448,7 @@ switch (alt28) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:499:17: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:505:17: ID { ID26 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_uncontrol645); if (HASEXCEPTION()) @@ -4521,7 +4516,7 @@ /** * $ANTLR start unobserve - * /Users/bion/projects/iordache/translator/pngenerator.g:504:1: unobserve : ^( UNOBSERVE ( ID )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:510:1: unobserve : ^( UNOBSERVE ( ID )+ ) ; */ static void unobserve(ppngenerator ctx) @@ -4535,8 +4530,8 @@ ID27 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:505:2: ( ^( UNOBSERVE ( ID )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:505:4: ^( UNOBSERVE ( ID )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:511:2: ( ^( UNOBSERVE ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:511:4: ^( UNOBSERVE ( ID )+ ) { MATCHT(UNOBSERVE, &FOLLOW_UNOBSERVE_in_unobserve660); if (HASEXCEPTION()) @@ -4551,7 +4546,7 @@ goto ruleunobserveEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:505:16: ( ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:511:16: ( ID )+ { int cnt29=0; @@ -4571,7 +4566,7 @@ switch (alt29) { case 1: - // /Users/bion/projects/iordache/translator/pngenerator.g:505:17: ID + // /Users/bion/projects/iordache/translator/pngenerator.g:511:17: ID { ID27 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_unobserve663); if (HASEXCEPTION()) @@ -4639,7 +4634,7 @@ /** * $ANTLR start other_commands - * /Users/bion/projects/iordache/translator/pngenerator.g:511:1: other_commands : print ; + * /Users/bion/projects/iordache/translator/pngenerator.g:517:1: other_commands : print ; */ static void other_commands(ppngenerator ctx) @@ -4649,8 +4644,8 @@ { - // /Users/bion/projects/iordache/translator/pngenerator.g:512:2: ( print ) - // /Users/bion/projects/iordache/translator/pngenerator.g:512:4: print + // /Users/bion/projects/iordache/translator/pngenerator.g:518:2: ( print ) + // /Users/bion/projects/iordache/translator/pngenerator.g:518:4: print { FOLLOWPUSH(FOLLOW_print_in_other_commands678); print(ctx); @@ -4684,7 +4679,7 @@ /** * $ANTLR start print - * /Users/bion/projects/iordache/translator/pngenerator.g:513:1: print : ^( PRINT ID group_elements ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:519:1: print : ^( PRINT ID group_elements ) ; */ static void print(ppngenerator ctx) @@ -4694,8 +4689,8 @@ { - // /Users/bion/projects/iordache/translator/pngenerator.g:514:2: ( ^( PRINT ID group_elements ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:514:4: ^( PRINT ID group_elements ) + // /Users/bion/projects/iordache/translator/pngenerator.g:520:2: ( ^( PRINT ID group_elements ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:520:4: ^( PRINT ID group_elements ) { MATCHT(PRINT, &FOLLOW_PRINT_in_print689); if (HASEXCEPTION()) @@ -4755,7 +4750,7 @@ /** * $ANTLR start group_elements - * /Users/bion/projects/iordache/translator/pngenerator.g:516:1: group_elements returns [pANTLR3_VECTOR ret] : ^( GROUP ( ID )+ ) ; + * /Users/bion/projects/iordache/translator/pngenerator.g:522:1: group_elements returns [pANTLR3_VECTOR ret] : ^( GROUP ( ID )+ ) ; */ static pANTLR3_VECTOR group_elements(ppngenerator ctx) @@ -4774,8 +4769,8 @@ ID28 = NULL; { - // /Users/bion/projects/iordache/translator/pngenerator.g:520:2: ( ^( GROUP ( ID )+ ) ) - // /Users/bion/projects/iordache/translator/pngenerator.g:520:4: ^( GROUP ( ID )+ ) + // /Users/bion/projects/iordache/translator/pngenerator.g:526:2: ( ^( GROUP ( ID )+ ) ) + // /Users/bion/projects/iordache/translator/pngenerator.g:526:4: ^( GROUP ( ID )+ ) { MATCHT(GROUP, &FOLLOW_GROUP_in_group_elements714); if (HASEXCEPTION()) @@ -4790,7 +4785,7 @@ goto rulegroup_elementsEx; } - // /Users/bion/projects/iordache/translator/pngenerator.g:520:12: ( ID )+ + // /Users/bion/projects/iordache/translator/pngenerator.g:526:12: ( ID )+ { int cnt30=0; @@ -4810,7 +4805,7 @@ switch (alt30) ... [truncated message content] |
From: <Ste...@us...> - 2009-06-23 17:45:18
|
Revision: 96 http://pntool.svn.sourceforge.net/pntool/?rev=96&view=rev Author: StephenCamp Date: 2009-06-23 17:45:15 +0000 (Tue, 23 Jun 2009) Log Message: ----------- pn2eacpn passes all current tests. test-pn2eacpn.txt now includes more comprehensive tests. Modified Paths: -------------- spnbox/tests/test-pn2eacpn.c spnbox/tests/test-pn2eacpn.txt Modified: spnbox/tests/test-pn2eacpn.c =================================================================== --- spnbox/tests/test-pn2eacpn.c 2009-06-23 17:35:46 UTC (rev 95) +++ spnbox/tests/test-pn2eacpn.c 2009-06-23 17:45:15 UTC (rev 96) @@ -86,10 +86,10 @@ Continue doing so until a fatal input error or a quit command is encountered.*/ while(ParseStructure(input, InputDesc, &Filled, &mem, &D, &Dm, &Dp, &MX, &L0, &L, &Mask, &MaskCount, &ipl, &ipCount, &dpl, &dpCount, &TD, &TDCount, &i)) { + /*Display the problem.*/ + DisplayStructure(InputDesc, Filled, &D, &Dm, &Dp, &MX, &L0, &L, Mask, MaskCount, ipl, ipCount, dpl, dpCount, TD, TDCount, i); /*If D was given, fill Dm and Dp appropriately.*/ FillDmDp(Filled, &D, &Dm, &Dp); - /*Display the problem.*/ - DisplayStructure(InputDesc, Filled, &D, &Dm, &Dp, &MX, &L0, &L, Mask, MaskCount, ipl, ipCount, dpl, dpCount, TD, TDCount, i); /*Get the solution.*/ result = pn2eacpn(Filled[1] ? &Dm : 0, Filled[2] ? &Dp : 0, Filled[6] ? Mask : 0, Filled[3] ? &MX : 0, Filled[4] ? &L0 : 0, Filled[5] ? &L : 0, Filled[7] ? ipl : 0, ipCount, Filled[8] ? dpl : 0, dpCount, Filled[9] ? TD : 0, TDCount); Modified: spnbox/tests/test-pn2eacpn.txt =================================================================== --- spnbox/tests/test-pn2eacpn.txt 2009-06-23 17:35:46 UTC (rev 95) +++ spnbox/tests/test-pn2eacpn.txt 2009-06-23 17:45:15 UTC (rev 96) @@ -22,6 +22,18 @@ echo Example 5.2 from the thesis. echo The first three test problems are the problems of the original matlab test echo file pn2ecdem.m. +echo Initial TD should be: +echo 0, 1, 2 +echo 0, 1, 2 +echo 0, 1, 2 +echo 0, 1, 2, 3, 4 +echo 0, 1, 2, 3, 4 +echo Solution incidence matrix should be: +echo 0 1 0 1 -1 -1 +echo -1 0 1 -1 1 0 +echo 1 -2 -2 0 0 0 +echo -1 0 0 0 0 1 + Dp 3 5 0 1 0 1 0 0 0 1 0 1 @@ -37,6 +49,10 @@ rem ---------------------------------------------------------------------------- echo Problem 2 echo Example 5.1 from the thesis. +echo The structure of this problem is such that, given the TD generated by the +echo current nltrans implementation there should be no modifications. +echo TD should be all transitions for all transitions but the last, which +echo should include only itself. Dm 4 5 1 0 1 0 1 0 0 0 1 0 @@ -53,7 +69,8 @@ rem ---------------------------------------------------------------------------- echo Problem 3 - +echo No places are parents & grandparents of any transitions because there is no +echo input (transition-to-place) anywhere in this matrix. No processing. D 5 6 -1 -1 0 0 0 0 0 -1 -1 0 0 0 @@ -81,6 +98,34 @@ done +rem ---------------------------------------------------------------------------- +echo Problem 5. +echo This problem introduces a pre-computed - in this case wrong - TD in order +echo to test other parts of the function. +echo Final incidence matrix should be: +echo -1 0 0 -1 0 1 0 0 +echo 0 -1 1 0 1 0 -1 0 +echo 0 1 -1 0 0 1 0 -1 +echo -1 1 0 0 -1 1 0 0 +echo -1 0 0 0 0 0 1 0 +echo -1 0 0 0 0 0 0 1 + +D 4 6 +-1 0 0 -1 0 1 +-1 -1 1 0 1 0 +-1 1 -1 0 0 1 +-1 1 0 0 -1 1 + +TD 6 +1 0 +1 1 +1 2 +1 3 +1 4 +1 5 + +done + quit This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <the...@us...> - 2009-06-23 17:35:51
|
Revision: 95 http://pntool.svn.sourceforge.net/pntool/?rev=95&view=rev Author: thecodeweasel Date: 2009-06-23 17:35:46 +0000 (Tue, 23 Jun 2009) Log Message: ----------- Updated documentation on what the three parsing stages do Now accept process declarations of the following forms: process PROC_NAME; process type PROC_NAME; Setting up for more improvements to pncompactor Setting constraint struct's next pointer to 0 if not used Modified Paths: -------------- translator/README.txt translator/pncompactor.c translator/pncompactor.g translator/pncompactor.h translator/pngenerator.c translator/pngenerator.g translator/pngenerator.h translator/pnscript.g translator/pnscriptLexer.c translator/pnscriptLexer.h translator/pnscriptParser.c translator/pnscriptParser.h Modified: translator/README.txt =================================================================== --- translator/README.txt 2009-06-22 22:51:46 UTC (rev 94) +++ translator/README.txt 2009-06-23 17:35:46 UTC (rev 95) @@ -18,6 +18,19 @@ #USE run '/PATH/TO/FILE/pnscript [INPUT_FILE]' +#ABOUT +pnscript.g containts the lexer and parser that handle the initial parsing of input and do semantic validation. + +pncompactor.g reorganizes constraint expressions to be of the form +ax1 + bx2 + ... <= c +Specifically, it +1. Distributes multiplication +2. Moves variables on the right side to the left //not yet implemented +3. Moves free terms on the left to the right //not yet implemented +4. Converts equations using <, >, or >= into their equivalent <= form //not yet implemented + +pngenerator.g walks over the tree one more time using data structures created by pnscript.g. pngenerator.g generates all the data necessary to populate a specs structure and returns this structure. + #NOTES A specs* structure is generated by pngenerator.c and returned to the main method in main.c. The main function should be easily adapted for use in the pns library's ScanInput() method Modified: translator/pncompactor.c =================================================================== --- translator/pncompactor.c 2009-06-22 22:51:46 UTC (rev 94) +++ translator/pncompactor.c 2009-06-23 17:35:46 UTC (rev 95) @@ -2,7 +2,7 @@ * This C source file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pncompactor.g - * - On : 2009-06-22 15:58:45 + * - On : 2009-06-22 19:56:48 * - for the tree parser : pncompactorTreeParser * * Editing it, at least manually, is not wise. * @@ -552,273 +552,267 @@ /* Declare the bitsets */ -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_definitions_in_pn90 */ -static ANTLR3_BITWORD FOLLOW_proc_definitions_in_pn90_bits[] = { ANTLR3_UINT64_LIT(0x0000000000C00400) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_definitions_in_pn90 = { FOLLOW_proc_definitions_in_pn90_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_instantiations_in_pn93 */ -static ANTLR3_BITWORD FOLLOW_proc_instantiations_in_pn93_bits[] = { ANTLR3_UINT64_LIT(0x0000000400C00402) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_instantiations_in_pn93 = { FOLLOW_proc_instantiations_in_pn93_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraints_in_pn96 */ -static ANTLR3_BITWORD FOLLOW_constraints_in_pn96_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000402) }; -static ANTLR3_BITSET_LIST FOLLOW_constraints_in_pn96 = { FOLLOW_constraints_in_pn96_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_other_commands_in_pn99 */ -static ANTLR3_BITWORD FOLLOW_other_commands_in_pn99_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000002) }; -static ANTLR3_BITSET_LIST FOLLOW_other_commands_in_pn99 = { FOLLOW_other_commands_in_pn99_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_def_start_in_proc_definitions111 */ -static ANTLR3_BITWORD FOLLOW_def_start_in_proc_definitions111_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_def_start_in_proc_definitions111 = { FOLLOW_def_start_in_proc_definitions111_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_defs_in_proc_definitions113 */ -static ANTLR3_BITWORD FOLLOW_trans_defs_in_proc_definitions113_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200468) }; -static ANTLR3_BITSET_LIST FOLLOW_trans_defs_in_proc_definitions113 = { FOLLOW_trans_defs_in_proc_definitions113_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_functions_in_proc_definitions116 */ -static ANTLR3_BITWORD FOLLOW_select_functions_in_proc_definitions116_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200008) }; -static ANTLR3_BITSET_LIST FOLLOW_select_functions_in_proc_definitions116 = { FOLLOW_select_functions_in_proc_definitions116_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_nondeterm_in_proc_definitions119 */ -static ANTLR3_BITWORD FOLLOW_nondeterm_in_proc_definitions119_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_nondeterm_in_proc_definitions119 = { FOLLOW_nondeterm_in_proc_definitions119_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_def_start130 */ -static ANTLR3_BITWORD FOLLOW_ID_in_def_start130_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_def_start130 = { FOLLOW_ID_in_def_start130_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_extern_trans_def_in_trans_defs138 */ -static ANTLR3_BITWORD FOLLOW_extern_trans_def_in_trans_defs138_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_extern_trans_def_in_trans_defs138 = { FOLLOW_extern_trans_def_in_trans_defs138_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_def_in_trans_defs143 */ -static ANTLR3_BITWORD FOLLOW_trans_def_in_trans_defs143_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_trans_def_in_trans_defs143 = { FOLLOW_trans_def_in_trans_defs143_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_extern_trans_def153 */ -static ANTLR3_BITWORD FOLLOW_set_in_extern_trans_def153_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_set_in_extern_trans_def153 = { FOLLOW_set_in_extern_trans_def153_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_extern_trans_def161 */ -static ANTLR3_BITWORD FOLLOW_ID_in_extern_trans_def161_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_extern_trans_def161 = { FOLLOW_ID_in_extern_trans_def161_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def173 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def173_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def173 = { FOLLOW_ID_in_trans_def173_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def175 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def175_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def175 = { FOLLOW_CODE_BLOCK_in_trans_def175_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_definitions_in_pn88 */ +static ANTLR3_BITWORD FOLLOW_proc_definitions_in_pn88_bits[] = { ANTLR3_UINT64_LIT(0x0000000000C00400) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_definitions_in_pn88 = { FOLLOW_proc_definitions_in_pn88_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_instantiations_in_pn91 */ +static ANTLR3_BITWORD FOLLOW_proc_instantiations_in_pn91_bits[] = { ANTLR3_UINT64_LIT(0x0000000400C00402) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_instantiations_in_pn91 = { FOLLOW_proc_instantiations_in_pn91_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraints_in_pn94 */ +static ANTLR3_BITWORD FOLLOW_constraints_in_pn94_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000402) }; +static ANTLR3_BITSET_LIST FOLLOW_constraints_in_pn94 = { FOLLOW_constraints_in_pn94_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_other_commands_in_pn97 */ +static ANTLR3_BITWORD FOLLOW_other_commands_in_pn97_bits[] = { ANTLR3_UINT64_LIT(0x0000000400000002) }; +static ANTLR3_BITSET_LIST FOLLOW_other_commands_in_pn97 = { FOLLOW_other_commands_in_pn97_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_def_start_in_proc_definitions109 */ +static ANTLR3_BITWORD FOLLOW_def_start_in_proc_definitions109_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_def_start_in_proc_definitions109 = { FOLLOW_def_start_in_proc_definitions109_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_defs_in_proc_definitions111 */ +static ANTLR3_BITWORD FOLLOW_trans_defs_in_proc_definitions111_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200468) }; +static ANTLR3_BITSET_LIST FOLLOW_trans_defs_in_proc_definitions111 = { FOLLOW_trans_defs_in_proc_definitions111_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_select_functions_in_proc_definitions114 */ +static ANTLR3_BITWORD FOLLOW_select_functions_in_proc_definitions114_bits[] = { ANTLR3_UINT64_LIT(0x0000200000200008) }; +static ANTLR3_BITSET_LIST FOLLOW_select_functions_in_proc_definitions114 = { FOLLOW_select_functions_in_proc_definitions114_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_nondeterm_in_proc_definitions117 */ +static ANTLR3_BITWORD FOLLOW_nondeterm_in_proc_definitions117_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_nondeterm_in_proc_definitions117 = { FOLLOW_nondeterm_in_proc_definitions117_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_def_start128 */ +static ANTLR3_BITWORD FOLLOW_ID_in_def_start128_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_def_start128 = { FOLLOW_ID_in_def_start128_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_extern_trans_def_in_trans_defs136 */ +static ANTLR3_BITWORD FOLLOW_extern_trans_def_in_trans_defs136_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_extern_trans_def_in_trans_defs136 = { FOLLOW_extern_trans_def_in_trans_defs136_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_trans_def_in_trans_defs141 */ +static ANTLR3_BITWORD FOLLOW_trans_def_in_trans_defs141_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_trans_def_in_trans_defs141 = { FOLLOW_trans_def_in_trans_defs141_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_set_in_extern_trans_def151 */ +static ANTLR3_BITWORD FOLLOW_set_in_extern_trans_def151_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_set_in_extern_trans_def151 = { FOLLOW_set_in_extern_trans_def151_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_extern_trans_def159 */ +static ANTLR3_BITWORD FOLLOW_ID_in_extern_trans_def159_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_extern_trans_def159 = { FOLLOW_ID_in_extern_trans_def159_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def171 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def171_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def171 = { FOLLOW_ID_in_trans_def171_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def173 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def173_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def173 = { FOLLOW_CODE_BLOCK_in_trans_def173_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def180 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def180_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def180 = { FOLLOW_ID_in_trans_def180_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def182 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def182_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def182_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def182 = { FOLLOW_ID_in_trans_def182_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def184 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def184_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def184 = { FOLLOW_ID_in_trans_def184_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def187 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def187_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def187 = { FOLLOW_CODE_BLOCK_in_trans_def187_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def195 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def195_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def195 = { FOLLOW_ID_in_trans_def195_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def185 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def185_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def185 = { FOLLOW_CODE_BLOCK_in_trans_def185_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def193 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def193_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def193 = { FOLLOW_ID_in_trans_def193_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def196 */ +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def196_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def196 = { FOLLOW_ID_in_trans_def196_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def198 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def198_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITWORD FOLLOW_ID_in_trans_def198_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def198 = { FOLLOW_ID_in_trans_def198_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_trans_def200 */ -static ANTLR3_BITWORD FOLLOW_ID_in_trans_def200_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_trans_def200 = { FOLLOW_ID_in_trans_def200_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def203 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def203_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def203 = { FOLLOW_CODE_BLOCK_in_trans_def203_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_DEF_in_select_functions215 */ -static ANTLR3_BITWORD FOLLOW_SELECT_DEF_in_select_functions215_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_SELECT_DEF_in_select_functions215 = { FOLLOW_SELECT_DEF_in_select_functions215_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_select_functions217 */ -static ANTLR3_BITWORD FOLLOW_ID_in_select_functions217_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002000) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_select_functions217 = { FOLLOW_ID_in_select_functions217_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_select_functions219 */ -static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_select_functions219_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_select_functions219 = { FOLLOW_CODE_BLOCK_in_select_functions219_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_45_in_nondeterm230 */ -static ANTLR3_BITWORD FOLLOW_45_in_nondeterm230_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_45_in_nondeterm230 = { FOLLOW_45_in_nondeterm230_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_nondeterm232 */ -static ANTLR3_BITWORD FOLLOW_ID_in_nondeterm232_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_nondeterm232 = { FOLLOW_ID_in_nondeterm232_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_init_in_proc_instantiations244 */ -static ANTLR3_BITWORD FOLLOW_proc_init_in_proc_instantiations244_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_init_in_proc_instantiations244 = { FOLLOW_proc_init_in_proc_instantiations244_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_sync_def_in_proc_instantiations248 */ -static ANTLR3_BITWORD FOLLOW_sync_def_in_proc_instantiations248_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_sync_def_in_proc_instantiations248 = { FOLLOW_sync_def_in_proc_instantiations248_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_start_in_proc_instantiations252 */ -static ANTLR3_BITWORD FOLLOW_proc_start_in_proc_instantiations252_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_proc_start_in_proc_instantiations252 = { FOLLOW_proc_start_in_proc_instantiations252_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_init262 */ -static ANTLR3_BITWORD FOLLOW_ID_in_proc_init262_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_init262 = { FOLLOW_ID_in_proc_init262_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_numbered_ID_in_proc_init264 */ -static ANTLR3_BITWORD FOLLOW_numbered_ID_in_proc_init264_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_numbered_ID_in_proc_init264 = { FOLLOW_numbered_ID_in_proc_init264_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYNC_TOK_in_sync_def276 */ -static ANTLR3_BITWORD FOLLOW_SYNC_TOK_in_sync_def276_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_SYNC_TOK_in_sync_def276 = { FOLLOW_SYNC_TOK_in_sync_def276_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_sync_def278 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_sync_def278_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_sync_def278 = { FOLLOW_group_elements_in_sync_def278_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_in_proc_start290 */ -static ANTLR3_BITWORD FOLLOW_START_in_proc_start290_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_START_in_proc_start290 = { FOLLOW_START_in_proc_start290_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_start292 */ -static ANTLR3_BITWORD FOLLOW_ID_in_proc_start292_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_start292 = { FOLLOW_ID_in_proc_start292_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraint_block_in_constraints309 */ -static ANTLR3_BITWORD FOLLOW_constraint_block_in_constraints309_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_constraint_block_in_constraints309 = { FOLLOW_constraint_block_in_constraints309_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_constraints315 */ -static ANTLR3_BITWORD FOLLOW_eq_in_constraints315_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_constraints315 = { FOLLOW_eq_in_constraints315_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_live_def_in_constraints320 */ -static ANTLR3_BITWORD FOLLOW_live_def_in_constraints320_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_live_def_in_constraints320 = { FOLLOW_live_def_in_constraints320_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_uncontrol_in_constraints322 */ -static ANTLR3_BITWORD FOLLOW_uncontrol_in_constraints322_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_uncontrol_in_constraints322 = { FOLLOW_uncontrol_in_constraints322_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_unobserve_in_constraints324 */ -static ANTLR3_BITWORD FOLLOW_unobserve_in_constraints324_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_unobserve_in_constraints324 = { FOLLOW_unobserve_in_constraints324_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_constraint_block335 */ -static ANTLR3_BITWORD FOLLOW_ID_in_constraint_block335_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_constraint_block335 = { FOLLOW_ID_in_constraint_block335_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_eq344 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_eq344_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_eq344 = { FOLLOW_relationalExpression_in_eq344_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQS_OP_in_eq350 */ -static ANTLR3_BITWORD FOLLOW_EQS_OP_in_eq350_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQS_OP_in_eq350 = { FOLLOW_EQS_OP_in_eq350_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_trans_def201 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_trans_def201_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_trans_def201 = { FOLLOW_CODE_BLOCK_in_trans_def201_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_SELECT_DEF_in_select_functions213 */ +static ANTLR3_BITWORD FOLLOW_SELECT_DEF_in_select_functions213_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_SELECT_DEF_in_select_functions213 = { FOLLOW_SELECT_DEF_in_select_functions213_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_select_functions215 */ +static ANTLR3_BITWORD FOLLOW_ID_in_select_functions215_bits[] = { ANTLR3_UINT64_LIT(0x0000000000002000) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_select_functions215 = { FOLLOW_ID_in_select_functions215_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_CODE_BLOCK_in_select_functions217 */ +static ANTLR3_BITWORD FOLLOW_CODE_BLOCK_in_select_functions217_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_CODE_BLOCK_in_select_functions217 = { FOLLOW_CODE_BLOCK_in_select_functions217_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_45_in_nondeterm228 */ +static ANTLR3_BITWORD FOLLOW_45_in_nondeterm228_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_45_in_nondeterm228 = { FOLLOW_45_in_nondeterm228_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_nondeterm230 */ +static ANTLR3_BITWORD FOLLOW_ID_in_nondeterm230_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_nondeterm230 = { FOLLOW_ID_in_nondeterm230_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_init_in_proc_instantiations242 */ +static ANTLR3_BITWORD FOLLOW_proc_init_in_proc_instantiations242_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_init_in_proc_instantiations242 = { FOLLOW_proc_init_in_proc_instantiations242_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_sync_def_in_proc_instantiations246 */ +static ANTLR3_BITWORD FOLLOW_sync_def_in_proc_instantiations246_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_sync_def_in_proc_instantiations246 = { FOLLOW_sync_def_in_proc_instantiations246_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_proc_start_in_proc_instantiations250 */ +static ANTLR3_BITWORD FOLLOW_proc_start_in_proc_instantiations250_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_proc_start_in_proc_instantiations250 = { FOLLOW_proc_start_in_proc_instantiations250_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_init260 */ +static ANTLR3_BITWORD FOLLOW_ID_in_proc_init260_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_init260 = { FOLLOW_ID_in_proc_init260_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_numbered_ID_in_proc_init262 */ +static ANTLR3_BITWORD FOLLOW_numbered_ID_in_proc_init262_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_numbered_ID_in_proc_init262 = { FOLLOW_numbered_ID_in_proc_init262_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_SYNC_TOK_in_sync_def274 */ +static ANTLR3_BITWORD FOLLOW_SYNC_TOK_in_sync_def274_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_SYNC_TOK_in_sync_def274 = { FOLLOW_SYNC_TOK_in_sync_def274_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_sync_def276 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_sync_def276_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_sync_def276 = { FOLLOW_group_elements_in_sync_def276_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_START_in_proc_start288 */ +static ANTLR3_BITWORD FOLLOW_START_in_proc_start288_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_START_in_proc_start288 = { FOLLOW_START_in_proc_start288_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_proc_start290 */ +static ANTLR3_BITWORD FOLLOW_ID_in_proc_start290_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_proc_start290 = { FOLLOW_ID_in_proc_start290_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_constraint_block_in_constraints307 */ +static ANTLR3_BITWORD FOLLOW_constraint_block_in_constraints307_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_constraint_block_in_constraints307 = { FOLLOW_constraint_block_in_constraints307_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_constraints313 */ +static ANTLR3_BITWORD FOLLOW_eq_in_constraints313_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_constraints313 = { FOLLOW_eq_in_constraints313_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_live_def_in_constraints318 */ +static ANTLR3_BITWORD FOLLOW_live_def_in_constraints318_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_live_def_in_constraints318 = { FOLLOW_live_def_in_constraints318_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_uncontrol_in_constraints320 */ +static ANTLR3_BITWORD FOLLOW_uncontrol_in_constraints320_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_uncontrol_in_constraints320 = { FOLLOW_uncontrol_in_constraints320_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_unobserve_in_constraints322 */ +static ANTLR3_BITWORD FOLLOW_unobserve_in_constraints322_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_unobserve_in_constraints322 = { FOLLOW_unobserve_in_constraints322_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_constraint_block333 */ +static ANTLR3_BITWORD FOLLOW_ID_in_constraint_block333_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_constraint_block333 = { FOLLOW_ID_in_constraint_block333_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_eq342 */ +static ANTLR3_BITWORD FOLLOW_relationalExpression_in_eq342_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_eq342 = { FOLLOW_relationalExpression_in_eq342_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQS_OP_in_eq348 */ +static ANTLR3_BITWORD FOLLOW_EQS_OP_in_eq348_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQS_OP_in_eq348 = { FOLLOW_EQS_OP_in_eq348_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq350 */ +static ANTLR3_BITWORD FOLLOW_eq_in_eq350_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq350 = { FOLLOW_eq_in_eq350_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq352 */ -static ANTLR3_BITWORD FOLLOW_eq_in_eq352_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITWORD FOLLOW_eq_in_eq352_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq352 = { FOLLOW_eq_in_eq352_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq354 */ -static ANTLR3_BITWORD FOLLOW_eq_in_eq354_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq354 = { FOLLOW_eq_in_eq354_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression376 */ -static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression376_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression376 = { FOLLOW_EQ_OP_in_relationalExpression376_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_relationalExpression379 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_relationalExpression379_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_relationalExpression379 = { FOLLOW_relationalExpression_in_relationalExpression379_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression375 */ +static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression375_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression375 = { FOLLOW_EQ_OP_in_relationalExpression375_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression377 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression377_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression377 = { FOLLOW_additiveExpression_in_relationalExpression377_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression381 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression381_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression381_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression381 = { FOLLOW_additiveExpression_in_relationalExpression381_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_relationalExpression387 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_relationalExpression387_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_relationalExpression387 = { FOLLOW_relationalExpression_in_relationalExpression387_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression389 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression389_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression389 = { FOLLOW_additiveExpression_in_relationalExpression389_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression411 */ -static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression411_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression411 = { FOLLOW_primary_in_additiveExpression411_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression421 */ -static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression421_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression421 = { FOLLOW_PLUS_in_additiveExpression421_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression425 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression425_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression425 = { FOLLOW_additiveExpression_in_additiveExpression425_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression442 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression442_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression442 = { FOLLOW_additiveExpression_in_additiveExpression442_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression492 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression492_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression492 = { FOLLOW_MINUS_in_additiveExpression492_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression496 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression496_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression496 = { FOLLOW_additiveExpression_in_additiveExpression496_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression512 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression512_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression512 = { FOLLOW_additiveExpression_in_additiveExpression512_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary573 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_primary573_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary573 = { FOLLOW_MINUS_in_primary573_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary577 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary577_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary577 = { FOLLOW_eq_in_primary577_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary592 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_primary592_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary592 = { FOLLOW_group_elements_in_primary592_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary633 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary633_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary633 = { FOLLOW_number_in_primary633_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary644 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary644_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary644 = { FOLLOW_MULT_in_primary644_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary646 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary646_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary646 = { FOLLOW_number_in_primary646_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary648 */ -static ANTLR3_BITWORD FOLLOW_primary_in_primary648_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary648 = { FOLLOW_primary_in_primary648_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary683 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary683_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary683 = { FOLLOW_MULT_in_primary683_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary685 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary685_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary685 = { FOLLOW_number_in_primary685_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary689 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary689_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary689 = { FOLLOW_eq_in_primary689_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def713 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def713_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def713 = { FOLLOW_LIVE_in_live_def713_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def715 */ -static ANTLR3_BITWORD FOLLOW_ALL_in_live_def715_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def715 = { FOLLOW_ALL_in_live_def715_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def717 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def717_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def717 = { FOLLOW_ID_in_live_def717_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def725 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def725_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def725 = { FOLLOW_LIVE_in_live_def725_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def727 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def727_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def727 = { FOLLOW_ID_in_live_def727_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol739 */ -static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol739_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol739 = { FOLLOW_UNCONTROL_in_uncontrol739_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol741 */ -static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol741_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol741 = { FOLLOW_ID_in_uncontrol741_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve753 */ -static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve753_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve753 = { FOLLOW_UNOBSERVE_in_unobserve753_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve755 */ -static ANTLR3_BITWORD FOLLOW_ID_in_unobserve755_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve755 = { FOLLOW_ID_in_unobserve755_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands767 */ -static ANTLR3_BITWORD FOLLOW_print_in_other_commands767_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands767 = { FOLLOW_print_in_other_commands767_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print777 */ -static ANTLR3_BITWORD FOLLOW_PRINT_in_print777_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print777 = { FOLLOW_PRINT_in_print777_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print779 */ -static ANTLR3_BITWORD FOLLOW_ID_in_print779_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_print779 = { FOLLOW_ID_in_print779_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print781 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_print781_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print781 = { FOLLOW_group_elements_in_print781_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number800 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number800_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number800 = { FOLLOW_INT_in_number800_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number813 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_number813_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number813 = { FOLLOW_MINUS_in_number813_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number815 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number815_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number815 = { FOLLOW_INT_in_number815_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements833 */ -static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements833_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements833 = { FOLLOW_GROUP_in_group_elements833_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements835 */ -static ANTLR3_BITWORD FOLLOW_ID_in_group_elements835_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements835 = { FOLLOW_ID_in_group_elements835_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID846 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID846_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID846 = { FOLLOW_ID_in_numbered_ID846_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID852 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID852_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID852 = { FOLLOW_ID_in_numbered_ID852_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID854 */ -static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID854_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID854 = { FOLLOW_INT_in_numbered_ID854_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression402 */ +static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression402_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression402 = { FOLLOW_primary_in_additiveExpression402_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression412 */ +static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression412_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression412 = { FOLLOW_PLUS_in_additiveExpression412_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression416 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression416_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression416 = { FOLLOW_additiveExpression_in_additiveExpression416_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression433 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression433_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression433 = { FOLLOW_additiveExpression_in_additiveExpression433_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression483 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression483_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression483 = { FOLLOW_MINUS_in_additiveExpression483_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression487 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression487_bits[] = { ANTLR3_UINT64_LIT(0x0000000031040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression487 = { FOLLOW_additiveExpression_in_additiveExpression487_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression503 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression503_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression503 = { FOLLOW_additiveExpression_in_additiveExpression503_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary564 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_primary564_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary564 = { FOLLOW_MINUS_in_primary564_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary568 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary568_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary568 = { FOLLOW_eq_in_primary568_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary583 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_primary583_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary583 = { FOLLOW_group_elements_in_primary583_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary624 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary624_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary624 = { FOLLOW_number_in_primary624_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary635 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary635_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary635 = { FOLLOW_MULT_in_primary635_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary637 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary637_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary637 = { FOLLOW_number_in_primary637_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary639 */ +static ANTLR3_BITWORD FOLLOW_primary_in_primary639_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary639 = { FOLLOW_primary_in_primary639_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary674 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary674_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary674 = { FOLLOW_MULT_in_primary674_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary676 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary676_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary676 = { FOLLOW_number_in_primary676_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary680 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary680_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary680 = { FOLLOW_eq_in_primary680_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def704 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def704_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def704 = { FOLLOW_LIVE_in_live_def704_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def706 */ +static ANTLR3_BITWORD FOLLOW_ALL_in_live_def706_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def706 = { FOLLOW_ALL_in_live_def706_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def708 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def708_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def708 = { FOLLOW_ID_in_live_def708_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def716 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def716_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def716 = { FOLLOW_LIVE_in_live_def716_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def718 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def718_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def718 = { FOLLOW_ID_in_live_def718_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol730 */ +static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol730_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol730 = { FOLLOW_UNCONTROL_in_uncontrol730_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol732 */ +static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol732_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol732 = { FOLLOW_ID_in_uncontrol732_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve744 */ +static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve744_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve744 = { FOLLOW_UNOBSERVE_in_unobserve744_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve746 */ +static ANTLR3_BITWORD FOLLOW_ID_in_unobserve746_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve746 = { FOLLOW_ID_in_unobserve746_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands758 */ +static ANTLR3_BITWORD FOLLOW_print_in_other_commands758_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands758 = { FOLLOW_print_in_other_commands758_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print768 */ +static ANTLR3_BITWORD FOLLOW_PRINT_in_print768_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print768 = { FOLLOW_PRINT_in_print768_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print770 */ +static ANTLR3_BITWORD FOLLOW_ID_in_print770_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_print770 = { FOLLOW_ID_in_print770_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print772 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_print772_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print772 = { FOLLOW_group_elements_in_print772_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number791 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number791_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number791 = { FOLLOW_INT_in_number791_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number804 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_number804_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number804 = { FOLLOW_MINUS_in_number804_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number806 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number806_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number806 = { FOLLOW_INT_in_number806_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements824 */ +static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements824_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements824 = { FOLLOW_GROUP_in_group_elements824_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements826 */ +static ANTLR3_BITWORD FOLLOW_ID_in_group_elements826_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements826 = { FOLLOW_ID_in_group_elements826_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID837 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID837_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID837 = { FOLLOW_ID_in_numbered_ID837_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID843 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID843_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID843 = { FOLLOW_ID_in_numbered_ID843_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID845 */ +static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID845_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID845 = { FOLLOW_INT_in_numbered_ID845_bits, 1 }; @@ -826,99 +820,99 @@ * DFA tables for the parser */ /** Static dfa state tables for Cyclic dfa: - * 154:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); + * 153:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); */ -static const ANTLR3_INT32 dfa25_eot[15] = +static const ANTLR3_INT32 dfa23_eot[15] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; -static const ANTLR3_INT32 dfa25_eof[15] = +static const ANTLR3_INT32 dfa23_eof[15] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; -static const ANTLR3_INT32 dfa25_min[15] = +static const ANTLR3_INT32 dfa23_min[15] = { 7, 2, -1, -1, 2, 24, 24, -1, 7, 2, -1, -1, 24, 3, 7 }; -static const ANTLR3_INT32 dfa25_max[15] = +static const ANTLR3_INT32 dfa23_max[15] = { 29, 2, -1, -1, 2, 27, 29, -1, 29, 2, -1, -1, 24, 3, 29 }; -static const ANTLR3_INT32 dfa25_accept[15] = +static const ANTLR3_INT32 dfa23_accept[15] = { -1, -1, 2, 3, -1, -1, -1, 1, -1, -1, 4, 5, -1, -1, -1 }; -static const ANTLR3_INT32 dfa25_special[15] = +static const ANTLR3_INT32 dfa23_special[15] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; /** Used when there is no transition table entry for a particular state */ -#define dfa25_T_empty NULL +#define dfa23_T_empty NULL -static const ANTLR3_INT32 dfa25_T0[] = +static const ANTLR3_INT32 dfa23_T0[] = { + 5 + };static const ANTLR3_INT32 dfa23_T1[] = + { 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, -1, 10, -1, 11, 11, -1, 10 - };static const ANTLR3_INT32 dfa25_T1[] = + };static const ANTLR3_INT32 dfa23_T2[] = { 3, -1, 7, 7 - };static const ANTLR3_INT32 dfa25_T2[] = + };static const ANTLR3_INT32 dfa23_T3[] = { - 6 - };static const ANTLR3_INT32 dfa25_T3[] = + 8, -1, -1, -1, -1, 9 + };static const ANTLR3_INT32 dfa23_T4[] = { + 14 + };static const ANTLR3_INT32 dfa23_T5[] = + { + 13 + };static const ANTLR3_INT32 dfa23_T6[] = + { 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, -1, ... [truncated message content] |
From: <the...@us...> - 2009-06-22 22:51:52
|
Revision: 94 http://pntool.svn.sourceforge.net/pntool/?rev=94&view=rev Author: thecodeweasel Date: 2009-06-22 22:51:46 +0000 (Mon, 22 Jun 2009) Log Message: ----------- Updated stuff in the constraints section to be parsed in any order Modified Paths: -------------- translator/docs/TODO.rtf translator/pncompactor.c translator/pncompactor.g translator/pncompactor.h translator/pngenerator.c translator/pngenerator.g translator/pngenerator.h translator/pnscript.g translator/pnscriptLexer.c translator/pnscriptLexer.h translator/pnscriptParser.c translator/pnscriptParser.h translator/pnscript_java_compat.g Modified: translator/docs/TODO.rtf =================================================================== --- translator/docs/TODO.rtf 2009-06-22 22:12:37 UTC (rev 93) +++ translator/docs/TODO.rtf 2009-06-22 22:51:46 UTC (rev 94) @@ -14,7 +14,7 @@ \ \strike \strikec0 Construct output template (v1, it's okay if there are imaginary things commented out. But, it should at least compile)\strike0\striked0 : We might get a C template engine someday...\ \strike \strikec0 Generate a tree walker to apply the distributive law to the equations\strike0\striked0 \ -Generate a tree walker to output code\ +\strike \strikec0 Generate a tree walker to output code\strike0\striked0 \ \strike \strikec0 Re-write Main.c to invoke everything properly\strike0\striked0 \ \strike \strikec0 Update README\strike0\striked0 \ \ @@ -24,7 +24,4 @@ \strike \strikec0 Implement error handling(/recovery?) - use flags for warning levels?\strike0\striked0 \ \strike \strikec0 Update README\strike0\striked0 \ Generate test data\ -Debug\ -Implement a tree walker to "balance" the equations\ -Generate test data\ -Debug} \ No newline at end of file +Implement a tree walker to "balance" the equations} \ No newline at end of file Modified: translator/pncompactor.c =================================================================== --- translator/pncompactor.c 2009-06-22 22:12:37 UTC (rev 93) +++ translator/pncompactor.c 2009-06-22 22:51:46 UTC (rev 94) @@ -2,7 +2,7 @@ * This C source file was generated by $ANTLR version 3.1.2 * * - From the grammar source file : /Users/bion/projects/iordache/translator/pncompactor.g - * - On : 2009-06-20 00:57:44 + * - On : 2009-06-22 15:58:45 * - for the tree parser : pncompactorTreeParser * * Editing it, at least manually, is not wise. * @@ -663,162 +663,162 @@ /** Bitset defining follow set for error recovery in rule state: FOLLOW_constraint_block_in_constraints309 */ static ANTLR3_BITWORD FOLLOW_constraint_block_in_constraints309_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; static ANTLR3_BITSET_LIST FOLLOW_constraint_block_in_constraints309 = { FOLLOW_constraint_block_in_constraints309_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_constraints314 */ -static ANTLR3_BITWORD FOLLOW_eq_in_constraints314_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_constraints314 = { FOLLOW_eq_in_constraints314_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_constraints315 */ +static ANTLR3_BITWORD FOLLOW_eq_in_constraints315_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_constraints315 = { FOLLOW_eq_in_constraints315_bits, 1 }; /** Bitset defining follow set for error recovery in rule state: FOLLOW_live_def_in_constraints320 */ -static ANTLR3_BITWORD FOLLOW_live_def_in_constraints320_bits[] = { ANTLR3_UINT64_LIT(0x0000000300000008) }; +static ANTLR3_BITWORD FOLLOW_live_def_in_constraints320_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; static ANTLR3_BITSET_LIST FOLLOW_live_def_in_constraints320 = { FOLLOW_live_def_in_constraints320_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_uncontrol_in_constraints323 */ -static ANTLR3_BITWORD FOLLOW_uncontrol_in_constraints323_bits[] = { ANTLR3_UINT64_LIT(0x0000000200000008) }; -static ANTLR3_BITSET_LIST FOLLOW_uncontrol_in_constraints323 = { FOLLOW_uncontrol_in_constraints323_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_unobserve_in_constraints326 */ -static ANTLR3_BITWORD FOLLOW_unobserve_in_constraints326_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_unobserve_in_constraints326 = { FOLLOW_unobserve_in_constraints326_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_constraint_block336 */ -static ANTLR3_BITWORD FOLLOW_ID_in_constraint_block336_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_constraint_block336 = { FOLLOW_ID_in_constraint_block336_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_eq345 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_eq345_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_eq345 = { FOLLOW_relationalExpression_in_eq345_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQS_OP_in_eq351 */ -static ANTLR3_BITWORD FOLLOW_EQS_OP_in_eq351_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQS_OP_in_eq351 = { FOLLOW_EQS_OP_in_eq351_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq353 */ -static ANTLR3_BITWORD FOLLOW_eq_in_eq353_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq353 = { FOLLOW_eq_in_eq353_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq355 */ -static ANTLR3_BITWORD FOLLOW_eq_in_eq355_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq355 = { FOLLOW_eq_in_eq355_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression377 */ -static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression377_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression377 = { FOLLOW_EQ_OP_in_relationalExpression377_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_relationalExpression380 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_relationalExpression380_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_relationalExpression380 = { FOLLOW_relationalExpression_in_relationalExpression380_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression382 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression382_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression382 = { FOLLOW_additiveExpression_in_relationalExpression382_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_relationalExpression388 */ -static ANTLR3_BITWORD FOLLOW_relationalExpression_in_relationalExpression388_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_relationalExpression388 = { FOLLOW_relationalExpression_in_relationalExpression388_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression390 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression390_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression390 = { FOLLOW_additiveExpression_in_relationalExpression390_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression412 */ -static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression412_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression412 = { FOLLOW_primary_in_additiveExpression412_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression422 */ -static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression422_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression422 = { FOLLOW_PLUS_in_additiveExpression422_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression426 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression426_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression426 = { FOLLOW_additiveExpression_in_additiveExpression426_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression443 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression443_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression443 = { FOLLOW_additiveExpression_in_additiveExpression443_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression493 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression493_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression493 = { FOLLOW_MINUS_in_additiveExpression493_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression497 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression497_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression497 = { FOLLOW_additiveExpression_in_additiveExpression497_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression513 */ -static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression513_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression513 = { FOLLOW_additiveExpression_in_additiveExpression513_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary574 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_primary574_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary574 = { FOLLOW_MINUS_in_primary574_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary578 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary578_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary578 = { FOLLOW_eq_in_primary578_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary593 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_primary593_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary593 = { FOLLOW_group_elements_in_primary593_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary634 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary634_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary634 = { FOLLOW_number_in_primary634_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary645 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary645_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary645 = { FOLLOW_MULT_in_primary645_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary647 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary647_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary647 = { FOLLOW_number_in_primary647_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary649 */ -static ANTLR3_BITWORD FOLLOW_primary_in_primary649_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary649 = { FOLLOW_primary_in_primary649_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary684 */ -static ANTLR3_BITWORD FOLLOW_MULT_in_primary684_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary684 = { FOLLOW_MULT_in_primary684_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary686 */ -static ANTLR3_BITWORD FOLLOW_number_in_primary686_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; -static ANTLR3_BITSET_LIST FOLLOW_number_in_primary686 = { FOLLOW_number_in_primary686_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary690 */ -static ANTLR3_BITWORD FOLLOW_eq_in_primary690_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary690 = { FOLLOW_eq_in_primary690_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def714 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def714_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def714 = { FOLLOW_LIVE_in_live_def714_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def716 */ -static ANTLR3_BITWORD FOLLOW_ALL_in_live_def716_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def716 = { FOLLOW_ALL_in_live_def716_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def718 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def718_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def718 = { FOLLOW_ID_in_live_def718_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def726 */ -static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def726_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def726 = { FOLLOW_LIVE_in_live_def726_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def728 */ -static ANTLR3_BITWORD FOLLOW_ID_in_live_def728_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def728 = { FOLLOW_ID_in_live_def728_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol740 */ -static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol740_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol740 = { FOLLOW_UNCONTROL_in_uncontrol740_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol742 */ -static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol742_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol742 = { FOLLOW_ID_in_uncontrol742_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve754 */ -static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve754_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve754 = { FOLLOW_UNOBSERVE_in_unobserve754_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve756 */ -static ANTLR3_BITWORD FOLLOW_ID_in_unobserve756_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve756 = { FOLLOW_ID_in_unobserve756_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands768 */ -static ANTLR3_BITWORD FOLLOW_print_in_other_commands768_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands768 = { FOLLOW_print_in_other_commands768_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print778 */ -static ANTLR3_BITWORD FOLLOW_PRINT_in_print778_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print778 = { FOLLOW_PRINT_in_print778_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print780 */ -static ANTLR3_BITWORD FOLLOW_ID_in_print780_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_print780 = { FOLLOW_ID_in_print780_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print782 */ -static ANTLR3_BITWORD FOLLOW_group_elements_in_print782_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print782 = { FOLLOW_group_elements_in_print782_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number801 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number801_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number801 = { FOLLOW_INT_in_number801_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number814 */ -static ANTLR3_BITWORD FOLLOW_MINUS_in_number814_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number814 = { FOLLOW_MINUS_in_number814_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number816 */ -static ANTLR3_BITWORD FOLLOW_INT_in_number816_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_number816 = { FOLLOW_INT_in_number816_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements834 */ -static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements834_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements834 = { FOLLOW_GROUP_in_group_elements834_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements836 */ -static ANTLR3_BITWORD FOLLOW_ID_in_group_elements836_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements836 = { FOLLOW_ID_in_group_elements836_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID847 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID847_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID847 = { FOLLOW_ID_in_numbered_ID847_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID853 */ -static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID853_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; -static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID853 = { FOLLOW_ID_in_numbered_ID853_bits, 1 }; -/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID855 */ -static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID855_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; -static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID855 = { FOLLOW_INT_in_numbered_ID855_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_uncontrol_in_constraints322 */ +static ANTLR3_BITWORD FOLLOW_uncontrol_in_constraints322_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_uncontrol_in_constraints322 = { FOLLOW_uncontrol_in_constraints322_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_unobserve_in_constraints324 */ +static ANTLR3_BITWORD FOLLOW_unobserve_in_constraints324_bits[] = { ANTLR3_UINT64_LIT(0x000000034C000008) }; +static ANTLR3_BITSET_LIST FOLLOW_unobserve_in_constraints324 = { FOLLOW_unobserve_in_constraints324_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_constraint_block335 */ +static ANTLR3_BITWORD FOLLOW_ID_in_constraint_block335_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_constraint_block335 = { FOLLOW_ID_in_constraint_block335_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_eq344 */ +static ANTLR3_BITWORD FOLLOW_relationalExpression_in_eq344_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_eq344 = { FOLLOW_relationalExpression_in_eq344_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQS_OP_in_eq350 */ +static ANTLR3_BITWORD FOLLOW_EQS_OP_in_eq350_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQS_OP_in_eq350 = { FOLLOW_EQS_OP_in_eq350_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq352 */ +static ANTLR3_BITWORD FOLLOW_eq_in_eq352_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq352 = { FOLLOW_eq_in_eq352_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_eq354 */ +static ANTLR3_BITWORD FOLLOW_eq_in_eq354_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_eq354 = { FOLLOW_eq_in_eq354_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_EQ_OP_in_relationalExpression376 */ +static ANTLR3_BITWORD FOLLOW_EQ_OP_in_relationalExpression376_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_EQ_OP_in_relationalExpression376 = { FOLLOW_EQ_OP_in_relationalExpression376_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_relationalExpression379 */ +static ANTLR3_BITWORD FOLLOW_relationalExpression_in_relationalExpression379_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; +static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_relationalExpression379 = { FOLLOW_relationalExpression_in_relationalExpression379_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression381 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression381_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression381 = { FOLLOW_additiveExpression_in_relationalExpression381_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_relationalExpression_in_relationalExpression387 */ +static ANTLR3_BITWORD FOLLOW_relationalExpression_in_relationalExpression387_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_relationalExpression_in_relationalExpression387 = { FOLLOW_relationalExpression_in_relationalExpression387_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_relationalExpression389 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_relationalExpression389_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_relationalExpression389 = { FOLLOW_additiveExpression_in_relationalExpression389_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_additiveExpression411 */ +static ANTLR3_BITWORD FOLLOW_primary_in_additiveExpression411_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_additiveExpression411 = { FOLLOW_primary_in_additiveExpression411_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PLUS_in_additiveExpression421 */ +static ANTLR3_BITWORD FOLLOW_PLUS_in_additiveExpression421_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PLUS_in_additiveExpression421 = { FOLLOW_PLUS_in_additiveExpression421_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression425 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression425_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression425 = { FOLLOW_additiveExpression_in_additiveExpression425_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression442 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression442_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression442 = { FOLLOW_additiveExpression_in_additiveExpression442_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_additiveExpression492 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_additiveExpression492_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_additiveExpression492 = { FOLLOW_MINUS_in_additiveExpression492_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression496 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression496_bits[] = { ANTLR3_UINT64_LIT(0x0000000039040088) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression496 = { FOLLOW_additiveExpression_in_additiveExpression496_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_additiveExpression_in_additiveExpression512 */ +static ANTLR3_BITWORD FOLLOW_additiveExpression_in_additiveExpression512_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_additiveExpression_in_additiveExpression512 = { FOLLOW_additiveExpression_in_additiveExpression512_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_primary573 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_primary573_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_primary573 = { FOLLOW_MINUS_in_primary573_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary577 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary577_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary577 = { FOLLOW_eq_in_primary577_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_primary592 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_primary592_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_primary592 = { FOLLOW_group_elements_in_primary592_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary633 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary633_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary633 = { FOLLOW_number_in_primary633_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary644 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary644_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary644 = { FOLLOW_MULT_in_primary644_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary646 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary646_bits[] = { ANTLR3_UINT64_LIT(0x0000000021040088) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary646 = { FOLLOW_number_in_primary646_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_primary_in_primary648 */ +static ANTLR3_BITWORD FOLLOW_primary_in_primary648_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_primary_in_primary648 = { FOLLOW_primary_in_primary648_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MULT_in_primary683 */ +static ANTLR3_BITWORD FOLLOW_MULT_in_primary683_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MULT_in_primary683 = { FOLLOW_MULT_in_primary683_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_number_in_primary685 */ +static ANTLR3_BITWORD FOLLOW_number_in_primary685_bits[] = { ANTLR3_UINT64_LIT(0x000000000C000000) }; +static ANTLR3_BITSET_LIST FOLLOW_number_in_primary685 = { FOLLOW_number_in_primary685_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_eq_in_primary689 */ +static ANTLR3_BITWORD FOLLOW_eq_in_primary689_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_eq_in_primary689 = { FOLLOW_eq_in_primary689_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def713 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def713_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def713 = { FOLLOW_LIVE_in_live_def713_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ALL_in_live_def715 */ +static ANTLR3_BITWORD FOLLOW_ALL_in_live_def715_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ALL_in_live_def715 = { FOLLOW_ALL_in_live_def715_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def717 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def717_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def717 = { FOLLOW_ID_in_live_def717_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_LIVE_in_live_def725 */ +static ANTLR3_BITWORD FOLLOW_LIVE_in_live_def725_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_LIVE_in_live_def725 = { FOLLOW_LIVE_in_live_def725_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_live_def727 */ +static ANTLR3_BITWORD FOLLOW_ID_in_live_def727_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_live_def727 = { FOLLOW_ID_in_live_def727_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNCONTROL_in_uncontrol739 */ +static ANTLR3_BITWORD FOLLOW_UNCONTROL_in_uncontrol739_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNCONTROL_in_uncontrol739 = { FOLLOW_UNCONTROL_in_uncontrol739_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_uncontrol741 */ +static ANTLR3_BITWORD FOLLOW_ID_in_uncontrol741_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_uncontrol741 = { FOLLOW_ID_in_uncontrol741_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_UNOBSERVE_in_unobserve753 */ +static ANTLR3_BITWORD FOLLOW_UNOBSERVE_in_unobserve753_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_UNOBSERVE_in_unobserve753 = { FOLLOW_UNOBSERVE_in_unobserve753_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_unobserve755 */ +static ANTLR3_BITWORD FOLLOW_ID_in_unobserve755_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_unobserve755 = { FOLLOW_ID_in_unobserve755_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_print_in_other_commands767 */ +static ANTLR3_BITWORD FOLLOW_print_in_other_commands767_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_print_in_other_commands767 = { FOLLOW_print_in_other_commands767_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_PRINT_in_print777 */ +static ANTLR3_BITWORD FOLLOW_PRINT_in_print777_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_PRINT_in_print777 = { FOLLOW_PRINT_in_print777_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_print779 */ +static ANTLR3_BITWORD FOLLOW_ID_in_print779_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000088) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_print779 = { FOLLOW_ID_in_print779_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_group_elements_in_print781 */ +static ANTLR3_BITWORD FOLLOW_group_elements_in_print781_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_group_elements_in_print781 = { FOLLOW_group_elements_in_print781_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number800 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number800_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number800 = { FOLLOW_INT_in_number800_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_MINUS_in_number813 */ +static ANTLR3_BITWORD FOLLOW_MINUS_in_number813_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_MINUS_in_number813 = { FOLLOW_MINUS_in_number813_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_number815 */ +static ANTLR3_BITWORD FOLLOW_INT_in_number815_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_number815 = { FOLLOW_INT_in_number815_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_GROUP_in_group_elements833 */ +static ANTLR3_BITWORD FOLLOW_GROUP_in_group_elements833_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_GROUP_in_group_elements833 = { FOLLOW_GROUP_in_group_elements833_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_group_elements835 */ +static ANTLR3_BITWORD FOLLOW_ID_in_group_elements835_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000408) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_group_elements835 = { FOLLOW_ID_in_group_elements835_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID846 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID846_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000002) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID846 = { FOLLOW_ID_in_numbered_ID846_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_ID_in_numbered_ID852 */ +static ANTLR3_BITWORD FOLLOW_ID_in_numbered_ID852_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000004) }; +static ANTLR3_BITSET_LIST FOLLOW_ID_in_numbered_ID852 = { FOLLOW_ID_in_numbered_ID852_bits, 1 }; +/** Bitset defining follow set for error recovery in rule state: FOLLOW_INT_in_numbered_ID854 */ +static ANTLR3_BITWORD FOLLOW_INT_in_numbered_ID854_bits[] = { ANTLR3_UINT64_LIT(0x0000000000000008) }; +static ANTLR3_BITSET_LIST FOLLOW_INT_in_numbered_ID854 = { FOLLOW_INT_in_numbered_ID854_bits, 1 }; @@ -828,97 +828,97 @@ /** Static dfa state tables for Cyclic dfa: * 154:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq ); */ -static const ANTLR3_INT32 dfa28_eot[15] = +static const ANTLR3_INT32 dfa25_eot[15] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; -static const ANTLR3_INT32 dfa28_eof[15] = +static const ANTLR3_INT32 dfa25_eof[15] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; -static const ANTLR3_INT32 dfa28_min[15] = +static const ANTLR3_INT32 dfa25_min[15] = { 7, 2, -1, -1, 2, 24, 24, -1, 7, 2, -1, -1, 24, 3, 7 }; -static const ANTLR3_INT32 dfa28_max[15] = +static const ANTLR3_INT32 dfa25_max[15] = { 29, 2, -1, -1, 2, 27, 29, -1, 29, 2, -1, -1, 24, 3, 29 }; -static const ANTLR3_INT32 dfa28_accept[15] = +static const ANTLR3_INT32 dfa25_accept[15] = { -1, -1, 2, 3, -1, -1, -1, 1, -1, -1, 4, 5, -1, -1, -1 }; -static const ANTLR3_INT32 dfa28_special[15] = +static const ANTLR3_INT32 dfa25_special[15] = { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; /** Used when there is no transition table entry for a particular state */ -#define dfa28_T_empty NULL +#define dfa25_T_empty NULL -static const ANTLR3_INT32 dfa28_T0[] = +static const ANTLR3_INT32 dfa25_T0[] = { - 5 - };static const ANTLR3_INT32 dfa28_T1[] = - { - 3, -1, 7, 7 - };static const ANTLR3_INT32 dfa28_T2[] = - { 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, -1, -1, 10, -1, 11, 11, -1, 10 - };static const ANTLR3_INT32 dfa28_T3[] = + };static const ANTLR3_INT32 dfa25_T1[] = { - 8, -1, -1, -1, -1, 9 - };static const ANTLR3_INT32 dfa28_T4[] = + 3, -1, 7, 7 + };static const ANTLR3_INT32 dfa25_T2[] = { - 14 - };static const ANTLR3_INT32 dfa28_T5[] = - { 6 - };static const ANTLR3_INT32 dfa28_T6[] = + };static const ANTLR3_INT32 dfa25_T3[] = { 2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, 1 - };static const ANTLR3_INT32 dfa28_T7[] = + };static const ANTLR3_INT32 dfa25_T4[] = { - 13 - };static const ANTLR3_INT32 dfa28_T8[] = + 8, -1, -1, -1, -1, 9 + };static const ANTLR3_INT32 dfa25_T5[] = { + 5 + };static const ANTLR3_INT32 dfa25_T6[] = + { 12 + };static const ANTLR3_INT32 dfa25_T7[] = + { + 13 + };static const ANTLR3_INT32 dfa25_T8[] = + { + 14 }; /* Transition tables are a table of sub tables, with some tables * reused for efficiency. */ -static const ANTLR3_INT32 * const dfa28_transitions[] = +static const ANTLR3_INT32 * const dfa25_transitions[] = { - dfa28_T6, dfa28_T0, dfa28_T_empty, dfa28_T_empty, dfa28_T5, dfa28_T1, - dfa28_T3, dfa28_T_empty, dfa28_T2, dfa28_T8, dfa28_T_empty, dfa28_T_empty, - dfa28_T7, dfa28_T4, dfa28_T2 + dfa25_T3, dfa25_T5, dfa25_T_empty, dfa25_T_empty, dfa25_T2, dfa25_T1, + dfa25_T4, dfa25_T_empty, dfa25_T0, dfa25_T6, dfa25_T_empty, dfa25_T_empty, + dfa25_T7, dfa25_T8, dfa25_T0 }; -/* Declare tracking structure for Cyclic DFA 28 +/* Declare tracking structure for Cyclic DFA 25 */ static -ANTLR3_CYCLIC_DFA cdfa28 +ANTLR3_CYCLIC_DFA cdfa25 = { - 28, /* Decision number of this dfa */ + 25, /* Decision number of this dfa */ /* Which decision this represents: */ (const pANTLR3_UCHAR)"154:1: primary[bool enableAlt] : ( ^( MINUS eq ) -> eq | group_elements -> {!enableAlt || i == 1}? group_elements -> ^( MULT[tok2, newVal2] NUM[tok, newVal] group_elements ) | number | ^( MULT number primary[false] ) -> {$number.value == 0}? -> ^( MULT number primary ) | ^( MULT number eq ) -> {i == 0}? -> eq );", (CDFA_SPECIAL_FUNC) antlr3dfaspecialStateTransition, /* Default special state transition function */ antlr3dfaspecialTransition, /* DFA specialTransition is currently just a default function in the runtime */ antlr3dfapredict, /* DFA simulator function is in the runtime */ - dfa28_eot, /* EOT table */ - dfa28_eof, /* EOF table */ - dfa28_min, /* Minimum tokens for each state */ - dfa28_max, /* Maximum tokens for each state */ - dfa28_accept, /* Accept table */ - dfa28_special, /* Special transition states */ - dfa28_transitions /* Table of transition tables */ + dfa25_eot, /* EOT table */ + dfa25_eof, /* EOF table */ + dfa25_min, /* Minimum tokens for each state */ + dfa25_max, /* Maximum tokens for each state */ + dfa25_accept, /* Accept table */ + dfa25_special, /* Special transition states */ + dfa25_transitions /* Table of transition tables */ }; -/* End of Cyclic DFA 28 +/* End of Cyclic DFA 25 * --------------------- */ /* ========================================================================= @@ -3258,7 +3258,7 @@ /** * $ANTLR start constraints - * /Users/bion/projects/iordache/translator/pncompactor.g:64:1: constraints : ^( constraint_block ( eq )* ( live_def )? ( uncontrol )? ( unobserve )? ) ; + * /Users/bion/projects/iordache/translator/pncompactor.g:64:1: constraints : ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) ; */ static pncompactor_constraints_return constraints(ppncompactor ctx) @@ -3318,8 +3318,8 @@ retval.tree = NULL; { - // /Users/bion/projects/iordache/translator/pncompactor.g:69:2: ( ^( constraint_block ( eq )* ( live_def )? ( uncontrol )? ( unobserve )? ) ) - // /Users/bion/projects/iordache/translator/pncompactor.g:69:4: ^( constraint_block ( eq )* ( live_def )? ( uncontrol )? ( unobserve )? ) + // /Users/bion/projects/iordache/translator/pncompactor.g:69:2: ( ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) ) + // /Users/bion/projects/iordache/translator/pncompactor.g:69:4: ^( constraint_block ( ( eq ) | live_def | uncontrol | unobserve )* ) { root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); @@ -3345,82 +3345,83 @@ if ( LA(1)==ANTLR3_TOKEN_DOWN ) { MATCHT(ANTLR3_TOKEN_DOWN, NULL); - // /Users/bion/projects/iordache/translator/pncompactor.g:69:23: ( eq )* + // /Users/bion/projects/iordache/translator/pncompactor.g:69:23: ( ( eq ) | live_def | uncontrol | unobserve )* for (;;) { - int alt20=2; + int alt20=5; + switch ( LA(1) ) { - /* dfaLoopbackState(k,edges,eotPredictsAlt,description,stateNumber,semPredState) - */ - int LA20_0 = LA(1); - if ( (((LA20_0 >= EQS_OP) && (LA20_0 <= EQ_OP))) ) - { - alt20=1; - } + case EQS_OP: + case EQ_OP: + { + alt20=1; + } + break; + case LIVE: + { + alt20=2; + } + break; + case UNCONTROL: + { + alt20=3; + } + break; + case UNOBSERVE: + { + alt20=4; + } + break; } + switch (alt20) { case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:69:24: eq + // /Users/bion/projects/iordache/translator/pncompactor.g:69:24: ( eq ) { + // /Users/bion/projects/iordache/translator/pncompactor.g:69:24: ( eq ) + // /Users/bion/projects/iordache/translator/pncompactor.g:69:25: eq { + { - (SCOPE_TOP(constraints))->dist= antlr3StackNew(ANTLR3_SIZE_HINT); - static int j = 1; - (SCOPE_TOP(constraints))->dist->push( (SCOPE_TOP(constraints))->dist, &j, NULL); - (*numConstraints)++; - if(DEBUG) { - printf("-->%d : %d\n", *(int*) (SCOPE_TOP(constraints))->dist->peek( (SCOPE_TOP(constraints))->dist), (SCOPE_TOP(constraints))->dist->size( (SCOPE_TOP(constraints))->dist)); - } - - } - _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_eq_in_constraints314); - eq38=eq(ctx); + (SCOPE_TOP(constraints))->dist= antlr3StackNew(ANTLR3_SIZE_HINT); + static int j = 1; + (SCOPE_TOP(constraints))->dist->push( (SCOPE_TOP(constraints))->dist, &j, NULL); + (*numConstraints)++; + if(DEBUG) { + printf("-->%d : %d\n", *(int*) (SCOPE_TOP(constraints))->dist->peek( (SCOPE_TOP(constraints))->dist), (SCOPE_TOP(constraints))->dist->size( (SCOPE_TOP(constraints))->dist)); + } + + } + _last = (pANTLR3_BASE_TREE)LT(1); + FOLLOWPUSH(FOLLOW_eq_in_constraints315); + eq38=eq(ctx); - FOLLOWPOP(); - if (HASEXCEPTION()) - { - goto ruleconstraintsEx; - } + FOLLOWPOP(); + if (HASEXCEPTION()) + { + goto ruleconstraintsEx; + } - ADAPTOR->addChild(ADAPTOR, root_1, eq38.tree); - { + ADAPTOR->addChild(ADAPTOR, root_1, eq38.tree); + { - if(DEBUG) { - printf("---------------------\n"); - fflush(stdout); - } - + if(DEBUG) { + printf("---------------------\n"); + fflush(stdout); + } + + } + } + } break; - - default: - goto loop20; /* break out of the loop */ - break; - } - } - loop20: ; /* Jump out to here if this rule does not match */ - - - // /Users/bion/projects/iordache/translator/pncompactor.g:82:7: ( live_def )? - { - int alt21=2; - { - int LA21_0 = LA(1); - if ( (LA21_0 == LIVE) ) - { - alt21=1; - } - } - switch (alt21) - { - case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:82:7: live_def + case 2: + // /Users/bion/projects/iordache/translator/pncompactor.g:82:6: live_def { _last = (pANTLR3_BASE_TREE)LT(1); FOLLOWPUSH(FOLLOW_live_def_in_constraints320); @@ -3436,27 +3437,11 @@ } break; - - } - } - - // /Users/bion/projects/iordache/translator/pncompactor.g:82:17: ( uncontrol )? - { - int alt22=2; - { - int LA22_0 = LA(1); - if ( (LA22_0 == UNCONTROL) ) - { - alt22=1; - } - } - switch (alt22) - { - case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:82:17: uncontrol + case 3: + // /Users/bion/projects/iordache/translator/pncompactor.g:82:15: uncontrol { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_uncontrol_in_constraints323); + FOLLOWPUSH(FOLLOW_uncontrol_in_constraints322); uncontrol40=uncontrol(ctx); FOLLOWPOP(); @@ -3469,27 +3454,11 @@ } break; - - } - } - - // /Users/bion/projects/iordache/translator/pncompactor.g:82:28: ( unobserve )? - { - int alt23=2; - { - int LA23_0 = LA(1); - if ( (LA23_0 == UNOBSERVE) ) - { - alt23=1; - } - } - switch (alt23) - { - case 1: - // /Users/bion/projects/iordache/translator/pncompactor.g:82:28: unobserve + case 4: + // /Users/bion/projects/iordache/translator/pncompactor.g:82:25: unobserve { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_unobserve_in_constraints326); + FOLLOWPUSH(FOLLOW_unobserve_in_constraints324); unobserve41=unobserve(ctx); FOLLOWPOP(); @@ -3503,9 +3472,14 @@ } break; + default: + goto loop20; /* break out of the loop */ + break; } } + loop20: ; /* Jump out to here if this rule does not match */ + MATCHT(ANTLR3_TOKEN_UP, NULL); }ADAPTOR->addChild(ADAPTOR, root_0, root_1);_last = _save_last_1; } @@ -3580,7 +3554,7 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); _last = (pANTLR3_BASE_TREE)LT(1); - ID42 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_constraint_block336); + ID42 = (pANTLR3_BASE_TREE) MATCHT(ID, &FOLLOW_ID_in_constraint_block335); if (HASEXCEPTION()) { goto ruleconstraint_blockEx; @@ -3670,20 +3644,20 @@ { // /Users/bion/projects/iordache/translator/pncompactor.g:86:2: ( relationalExpression | ^( EQS_OP eq eq ) ) - ANTLR3_UINT32 alt24; + ANTLR3_UINT32 alt21; - alt24=2; + alt21=2; { - int LA24_0 = LA(1); - if ( (LA24_0 == EQ_OP) ) + int LA21_0 = LA(1); + if ( (LA21_0 == EQ_OP) ) { - alt24=1; + alt21=1; } - else if ( (LA24_0 == EQS_OP) ) + else if ( (LA21_0 == EQS_OP) ) { - alt24=2; + alt21=2; } else { @@ -3691,14 +3665,14 @@ CONSTRUCTEX(); EXCEPTION->type = ANTLR3_NO_VIABLE_ALT_EXCEPTION; EXCEPTION->message = (void *)""; - EXCEPTION->decisionNum = 24; + EXCEPTION->decisionNum = 21; EXCEPTION->state = 0; goto ruleeqEx; } } - switch (alt24) + switch (alt21) { case 1: // /Users/bion/projects/iordache/translator/pncompactor.g:86:4: relationalExpression @@ -3706,7 +3680,7 @@ root_0 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR)); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_relationalExpression_in_eq345); + FOLLOWPUSH(FOLLOW_relationalExpression_in_eq344); relationalExpression43=relationalExpression(ctx); FOLLOWPOP(); @@ -3731,7 +3705,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - EQS_OP44 = (pANTLR3_BASE_TREE) MATCHT(EQS_OP, &FOLLOW_EQS_OP_in_eq351); + EQS_OP44 = (pANTLR3_BASE_TREE) MATCHT(EQS_OP, &FOLLOW_EQS_OP_in_eq350); if (HASEXCEPTION()) { goto ruleeqEx; @@ -3745,7 +3719,7 @@ MATCHT(ANTLR3_TOKEN_DOWN, NULL); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_eq_in_eq353); + FOLLOWPUSH(FOLLOW_eq_in_eq352); eq45=eq(ctx); FOLLOWPOP(); @@ -3756,7 +3730,7 @@ ADAPTOR->addChild(ADAPTOR, root_1, eq45.tree); _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_eq_in_eq355); + FOLLOWPUSH(FOLLOW_eq_in_eq354); eq46=eq(ctx); FOLLOWPOP(); @@ -3873,7 +3847,7 @@ pANTLR3_BASE_TREE root_1;_save_last_1 = _last; _first_last_1 = NULL; root_1 = (pANTLR3_BASE_TREE)(ADAPTOR->nilNode(ADAPTOR));_last = (pANTLR3_BASE_TREE)LT(1); - EQ_OP47 = (pANTLR3_BASE_TREE) MATCHT(EQ_OP, &FOLLOW_EQ_OP_in_relationalExpression377); + EQ_OP47 = (pANTLR3_BASE_TREE) MATCHT(EQ_OP, &FOLLOW_EQ_OP_in_relationalExpression376); if (HASEXCEPTION()) { goto rulerelationalExpressionEx; @@ -3889,17 +3863,17 @@ // /Users/bion/projects/iordache/translator/pncompactor.g:93:17: ( relationalExpression | additiveExpression ) { - int alt25=2; + int alt22=2; { - int LA25_0 = LA(1); - if ( (LA25_0 == EQ_OP) ) + int LA22_0 = LA(1); + if ( (LA22_0 == EQ_OP) ) { - alt25=1; + alt22=1; } - else if ( (LA25_0 == GROUP || LA25_0 == MULT || LA25_0 == INT || ((LA25_0 >= PLUS) && (LA25_0 <= MINUS))) ) + else if ( (LA22_0 == GROUP || LA22_0 == MULT || LA22_0 == INT || ((LA22_0 >= PLUS) && (LA22_0 <= MINUS))) ) { - alt25=2; + alt22=2; } else { @@ -3907,20 +3881,20 @@ CONSTRUCTEX(); EXCEPTION->type = ANTLR3_NO_VIABLE_ALT_EXCEPTION; EXCEPTION->message = (void *)""; - EXCEPTION->decisionNum = 25; + EXCEPTION->decisionNum = 22; EXCEPTION->state = 0; goto rulerelationalExpressionEx; } } - switch (alt25) + switch (alt22) { case 1: // /Users/bion/projects/iordache/translator/pncompactor.g:93:18: relationalExpression { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_relationalExpression_in_relationalExpression380); + FOLLOWPUSH(FOLLOW_relationalExpression_in_relationalExpression379); relationalExpression48=relationalExpression(ctx); FOLLOWPOP(); @@ -3937,7 +3911,7 @@ // /Users/bion/projects/iordache/translator/pncompactor.g:93:39: additiveExpression { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression382); + FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression381); additiveExpression49=additiveExpression(ctx); FOLLOWPOP(); @@ -3959,17 +3933,17 @@ // /Users/bion/projects/iordache/translator/pncompactor.g:93:98: ( relationalExpression | additiveExpression ) { - int alt26=2; + int alt23=2; { - int LA26_0 = LA(1); - if ( (LA26_0 == EQ_OP) ) + int LA23_0 = LA(1); + if ( (LA23_0 == EQ_OP) ) { - alt26=1; + alt23=1; } - else if ( (LA26_0 == GROUP || LA26_0 == MULT || LA26_0 == INT || ((LA26_0 >= PLUS) && (LA26_0 <= MINUS))) ) + else if ( (LA23_0 == GROUP || LA23_0 == MULT || LA23_0 == INT || ((LA23_0 >= PLUS) && (LA23_0 <= MINUS))) ) { - alt26=2; + alt23=2; } else { @@ -3977,20 +3951,20 @@ CONSTRUCTEX(); EXCEPTION->type = ANTLR3_NO_VIABLE_ALT_EXCEPTION; EXCEPTION->message = (void *)""; - EXCEPTION->decisionNum = 26; + EXCEPTION->decisionNum = 23; EXCEPTION->state = 0; goto rulerelationalExpressionEx; } } - switch (alt26) + switch (alt23) { case 1: // /Users/bion/projects/iordache/translator/pncompactor.g:93:99: relationalExpression { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_relationalExpression_in_relationalExpression388); + FOLLOWPUSH(FOLLOW_relationalExpression_in_relationalExpression387); relationalExpression50=relationalExpression(ctx); FOLLOWPOP(); @@ -4007,7 +3981,7 @@ // /Users/bion/projects/iordache/translator/pncompactor.g:93:120: additiveExpression { _last = (pANTLR3_BASE_TREE)LT(1); - FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression390); + FOLLOWPUSH(FOLLOW_additiveExpression_in_relationalExpression389); additiveExpression51=additiveExpression(ctx); FOLLOWPOP(); @@ -4126,9 +4100,9 @@ { // /Users/bion/projects/iordache/translator/pncompactor.g:101:5: ( primary[true] | ^( PLUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( SUB[tok, \"-\"] $add1 $add2) -> ^( ADD[tok, \"+\"] $add1 $add2) | ^( MINUS add1= additiveExpression add2= additiveExpression ) -> {flipped}? ^( ADD[tok, \"+\"] $add1 $add2) -> ^( SUB[tok, \"-\"] $add1 $add2) ) - ANTLR3_UINT32 alt27; + ANTLR3_UINT32 alt24; - alt27=3; + alt24=3; switch ( LA(1) ) { @@ -4136,8 +4110,8 @@ { { - int LA27_1 = LA(2); - if ( (LA27_1 == DOWN) ) + int LA24_1 = LA(2); + ... [truncated message content] |