@@ -1962,7 +1962,12 @@ class parser
1962
1962
1963
1963
if (curr_table->contains (part))
1964
1964
{
1965
+ #if !defined(__PGI)
1965
1966
auto b = curr_table->get (part);
1967
+ #else
1968
+ // Workaround for PGI compiler
1969
+ std::shared_ptr<base> b = curr_table->get (part);
1970
+ #endif
1966
1971
if (b->is_table ())
1967
1972
curr_table = static_cast <table*>(b.get ());
1968
1973
else if (b->is_table_array ())
@@ -2044,7 +2049,12 @@ class parser
2044
2049
2045
2050
if (curr_table->contains (part))
2046
2051
{
2052
+ #if !defined(__PGI)
2047
2053
auto b = curr_table->get (part);
2054
+ #else
2055
+ // Workaround for PGI compiler
2056
+ std::shared_ptr<base> b = curr_table->get (part);
2057
+ #endif
2048
2058
2049
2059
// if this is the end of the table array name, add an
2050
2060
// element to the table array that we just looked up,
@@ -3030,9 +3040,9 @@ class parser
3030
3040
auto arr = make_array ();
3031
3041
while (it != end && *it != ' ]' )
3032
3042
{
3033
- auto value = parse_value (it, end);
3034
- if (auto v = value ->as <Value>())
3035
- arr->get ().push_back (value );
3043
+ auto val = parse_value (it, end);
3044
+ if (auto v = val ->as <Value>())
3045
+ arr->get ().push_back (val );
3036
3046
else
3037
3047
throw_parse_exception (" Arrays must be homogeneous" );
3038
3048
skip_whitespace_and_comments (it, end);
0 commit comments