[ 
https://issues.apache.org/jira/browse/ORC-1009?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

noirello updated ORC-1009:
--------------------------
    Description: 
The header file of ExpressionTree is missing a string include, which causes 
failure, when trying to build the library on Windows with msvc++.

Snippet from the error log: 
{code:java}
-- Building for: Visual Studio 16 2019
-- The C compiler identification is MSVC 19.29.30133.0
-- The CXX compiler identification is MSVC 19.29.30133.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual 
Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - 
skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual 
Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - 
skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Build type: DEBUG
-- compiler MSVC version 19.29.30133.0

...

D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,10): error C2039: 
'string': is not a member of 'std' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\vector(24): message : 
see declaration of 'std' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,17): error C3646: 
'toString': unknown override specifier 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,25): error C2059: 
syntax error: '(' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,33): error C2238: 
unexpected token(s) preceding ';' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(41): message : see 
declaration of 'orc::ExpressionTree' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(160,48): error C2270: 
'toString': modifiers not allowed on nonmember functions 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(162,13): error C2065: 
'mOperator': undeclared identifier 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(162,24): error C2050: 
switch expression not integral 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(163,12): error C2653: 
'Operator': is not a class or namespace name 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(163,22): error C2065: 
'OR': undeclared identifier [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,34): error C2065: 
'mChildren': undeclared identifier 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,34): error C2672: 
'begin': no matching overloaded function found 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,45): error C2893: 
Failed to specialize function template 'unknown-type std::begin(_Container &)' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]


##[error]Cmd.exe exited with code '1'.

{code}
 

  was:
The header file of ExpressionTree is missing a string include, which causes 
failure, when trying to build the library on Windows with msvc++.

Snippet from the error log: 
{code:java}
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,10): error C2039: 
'string': is not a member of 'std' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
C:\Program Files (x86)\Microsoft Visual 
Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\vector(24): message : 
see declaration of 'std' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,17): error C3646: 
'toString': unknown override specifier 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,25): error C2059: 
syntax error: '(' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,33): error C2238: 
unexpected token(s) preceding ';' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(41): message : see 
declaration of 'orc::ExpressionTree' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(160,48): error C2270: 
'toString': modifiers not allowed on nonmember functions 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(162,13): error C2065: 
'mOperator': undeclared identifier 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(162,24): error C2050: 
switch expression not integral 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(163,12): error C2653: 
'Operator': is not a class or namespace name 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(163,22): error C2065: 
'OR': undeclared identifier [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,34): error C2065: 
'mChildren': undeclared identifier 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,34): error C2672: 
'begin': no matching overloaded function found 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,45): error C2893: 
Failed to specialize function template 'unknown-type std::begin(_Container &)' 
[D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]


##[error]Cmd.exe exited with code '1'.

{code}
 


> [C++] Missing string include causes build failure with MSVC++
> -------------------------------------------------------------
>
>                 Key: ORC-1009
>                 URL: https://issues.apache.org/jira/browse/ORC-1009
>             Project: ORC
>          Issue Type: Bug
>    Affects Versions: 1.7.0
>            Reporter: noirello
>            Assignee: noirello
>            Priority: Major
>
> The header file of ExpressionTree is missing a string include, which causes 
> failure, when trying to build the library on Windows with msvc++.
> Snippet from the error log: 
> {code:java}
> -- Building for: Visual Studio 16 2019
> -- The C compiler identification is MSVC 19.29.30133.0
> -- The CXX compiler identification is MSVC 19.29.30133.0
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual 
> Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - 
> skipped
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual 
> Studio/2019/Enterprise/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - 
> skipped
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Build type: DEBUG
> -- compiler MSVC version 19.29.30133.0
> ...
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,10): error C2039: 
> 'string': is not a member of 'std' 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> C:\Program Files (x86)\Microsoft Visual 
> Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\vector(24): message 
> : see declaration of 'std' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,17): error C3646: 
> 'toString': unknown override specifier 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,25): error C2059: 
> syntax error: '(' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(71,33): error C2238: 
> unexpected token(s) preceding ';' 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.hh(41): message : see 
> declaration of 'orc::ExpressionTree' 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(160,48): error C2270: 
> 'toString': modifiers not allowed on nonmember functions 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(162,13): error C2065: 
> 'mOperator': undeclared identifier 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(162,24): error C2050: 
> switch expression not integral 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(163,12): error C2653: 
> 'Operator': is not a class or namespace name 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(163,22): error C2065: 
> 'OR': undeclared identifier 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,34): error C2065: 
> 'mChildren': undeclared identifier 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,34): error C2672: 
> 'begin': no matching overloaded function found 
> [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> D:\a\1\s\deps\orc-1.7.0\c++\src\sargs\ExpressionTree.cc(165,45): error C2893: 
> Failed to specialize function template 'unknown-type std::begin(_Container 
> &)' [D:\a\1\s\deps\orc-1.7.0\build\c++\src\orc.vcxproj]
> ##[error]Cmd.exe exited with code '1'.
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to