[Swift-devel] swift compilation error on compound expressions
Michael Wilde
wilde at mcs.anl.gov
Mon Mar 23 08:30:06 CDT 2009
This script:
--
string st = "foo";
string tu = "bar";
if ((st != "") || (tu != "")) {
if ((st != "") && (tu != "")) {
trace("sweep");
}
else {
trace("Error");
}
}
else {
trace("simple_loop");
}
sur$
gives:
--
Could not start execution.
Error reading source: : unexpected character in markup >
(position: START_TAG seen ...<vdl:getfieldvalue><vdlop:or>\n\t\t
<>... @69:17) : : unexpected character in markup > (position:
START_TAG seen ...<vdl:getfieldvalue><vdlop:or>\n\t\t <>...
@69:17)
sur$ cat tparse.swift
--
tparse.xml is:
--
<program xmlns="http://ci.uchicago.edu/swift/2009/02/swiftscript"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<variable name="st" type="string" xsi:nil="true"/>
<assign src="line 2">
<variableReference>st</variableReference>
<stringConstant>foo</stringConstant>
</assign>
<variable name="tu" type="string" xsi:nil="true"/>
<assign src="line 3">
<variableReference>tu</variableReference>
<stringConstant>bar</stringConstant>
</assign>
<if>
<or>
<cond op="!=">
<variableReference>st</variableReference>
<stringConstant></stringConstant>
</cond>
<cond op="!=">
<variableReference>tu</variableReference>
<stringConstant></stringConstant>
</cond>
</or>
<then>
<if>
<and>
<cond op="!=">
<variableReference>st</variableReference>
<stringConstant></stringConstant>
</cond>
<cond op="!=">
<variableReference>tu</variableReference>
<stringConstant></stringConstant>
</cond>
</and>
<then>
<call proc="trace" src="line 5">
<input><stringConstant>sweep</stringConstant></input>
</call>
</then>
<else>
<call proc="trace" src="line 8">
<input><stringConstant>Error</stringConstant></input>
</call>
</else></if>
</then>
<else>
<call proc="trace" src="line 12">
<input><stringConstant>simple_loop</stringConstant></input>
</call>
</else></if>
</program>
--
tparse.kml is:
<project><!-- CACHE ID d263322d-8468-4df4-a357-e6aa9c628977 -->
<import file="sys.xml"/>
<import file="scheduler.xml"/>
<import file="rlog.xml"/>
<import file="vdl.k"/>
<global name="swift#string#17004">
<vdl:new type="string" value="Error" />
</global>
<global name="swift#string#17003">
<vdl:new type="string" value="sweep" />
</global>
<global name="swift#string#17005">
<vdl:new type="string" value="simple_loop" />
</global>
<global name="swift#string#17001">
<vdl:new type="string" value="bar" />
</global>
<global name="swift#string#17000">
<vdl:new type="string" value="foo" />
</global>
<global name="swift#string#17002">
<vdl:new type="string" value="" />
</global>
<set name="st">
<vdl:new type="string" dbgname="st" waitfor="88000">
<vdl:mapping descriptor="concurrent_mapper">
<vdl:parameter
name="prefix">st-f2f01a13-f36f-458b-8cd9-2b8a8ee80c95</vdl:parameter>
</vdl:mapping>
</vdl:new>
</set>
<set name="tu">
<vdl:new type="string" dbgname="tu" waitfor="88001">
<vdl:mapping descriptor="concurrent_mapper">
<vdl:parameter
name="prefix">tu-91daec5d-486a-421f-8cac-58469d72f0ba</vdl:parameter>
</vdl:mapping>
</vdl:new>
</set>
<restartLog>
<vdl:mains>
<!-- TODO can move into vdl:mains so karajan files are smaller -->
<vdl:startprogressticker />
<vdl:mainp>
<parallel>
<sequential>
<vdl:setfieldvalue>
<argument name="var">
<variable>st</variable>
</argument>
<argument name="value">
<variable>swift#string#17000</variable>
</argument>
</vdl:setfieldvalue>
<partialCloseDataset var="{st}"
closeID="88000" />
</sequential>
<sequential>
<vdl:setfieldvalue>
<argument name="var">
<variable>tu</variable>
</argument>
<argument name="value">
<variable>swift#string#17001</variable>
</argument>
</vdl:setfieldvalue>
<partialCloseDataset var="{tu}"
closeID="88001" />
</sequential>
<sequential>
<if>
<vdl:getfieldvalue><vdlop:or>
<>
<variable>st</variable>
<variable>swift#string#17002</variable>
</>
<>
<variable>tu</variable>
<variable>swift#string#17002</variable>
</>
</vdlop:or></vdl:getfieldvalue>
<then>
<sequential>
<if>
<vdl:getfieldvalue><vdlop:and>
<>
<variable>st</variable>
<variable>swift#string#17002</variable>
</>
<>
<variable>tu</variable>
<variable>swift#string#17002</variable>
</>
</vdlop:and></vdl:getfieldvalue>
<then>
<sequential>
<trace>
<parallel>
<variable>swift#string#17003</variable>
</parallel>
</trace>
</sequential>
</then>
<else>
<sequential>
<trace>
<parallel>
<variable>swift#string#17004</variable>
</parallel>
</trace>
</sequential>
</else>
</if>
</sequential>
</then>
<else>
<sequential>
<trace>
<parallel>
<variable>swift#string#17005</variable>
</parallel>
</trace>
</sequential>
</else>
</if>
</sequential>
</parallel>
</vdl:mainp>
<vdl:stopprogressticker />
</vdl:mains>
</restartLog>
</project>
sur$
More information about the Swift-devel
mailing list