Commit 3648ec82 authored by rdubner's avatar rdubner

Backed version down to 3.8. Made some changes to handle EXTERNAL data clause.

parent f811e541
......@@ -268,7 +268,7 @@ CreateSymc(PARAMETERS &params,
params.symc << ");" ;
params.symc << endl;
}
}
return;
}
......
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LocalDebuggerCommandArguments>"C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest</LocalDebuggerCommandArguments>
<LocalDebuggerCommandArguments>-f C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest\rtest.cbl</LocalDebuggerCommandArguments>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LocalDebuggerCommandArguments>"C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest</LocalDebuggerCommandArguments>
<LocalDebuggerCommandArguments>-f C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest\rtest.cbl</LocalDebuggerCommandArguments>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LocalDebuggerCommandArguments>"C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest</LocalDebuggerCommandArguments>
<LocalDebuggerCommandArguments>-f C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest\rtest.cbl</LocalDebuggerCommandArguments>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LocalDebuggerCommandArguments>"C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest</LocalDebuggerCommandArguments>
<LocalDebuggerCommandArguments>-f C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest C:\Users\Bob\repos\cbl-gdb-samples\ref_test_2\rtest\rtest.cbl</LocalDebuggerCommandArguments>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
</PropertyGroup>
</Project>
\ No newline at end of file
......@@ -46,6 +46,7 @@ VAR_NODE::VAR_NODE()
offset = 0;
level = LEVEL_ROOT;
occurs = 0;
is_external = false;
parent = nullptr;
data_description_index = NO_INDEX;
......@@ -443,6 +444,21 @@ VARIABLE_TREE::ReadFromFile(std::ifstream &ifs)
// And now we can proceed
}
it = tokens.begin();
while(it != tokens.end()) {
if( *it EQ "EXTERNAL" ) {
new_node->is_external = true;
break;
}
it++;
}
if( it != tokens.end() ) {
size_t index = it - tokens.begin();
vector<string>::iterator it1 = tokens.begin() + index;
vector<string>::iterator it2 = tokens.begin() + index + 1;
tokens.erase(it1,it2);
}
it = tokens.begin();
while(it != tokens.end()) {
if( *it EQ "OCCURS" ) {
......
......@@ -110,6 +110,7 @@ private:
std::string usage; // Reported USAGE string
std::string redefines; // Identifier this one REDEFINES
int occurs; // Non-zero means this is a table
bool is_external; // Flagged as EXTERNAL
// Here we keep track of the tree
VAR_NODE *parent;
......
......@@ -4,4 +4,4 @@
// On the Unix side, there is scripting trickery to propogate this version
// code into cobcd.py and the names of packages when they are created.
#define VERSION "3.9"
#define VERSION "3.8"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment