Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Build][Windows] Fix Windows build by including cctype #4319

Merged
merged 4 commits into from
Nov 14, 2019

Conversation

soiferj
Copy link
Contributor

@soiferj soiferj commented Nov 12, 2019

The Windows build is currently broken with the error: isdigit is not a member of standard. It looks like std::isdigit is in header <cctype>. Including it fixes the build.

@tqchen @jmorrill could you take a look?

Also, is there an ETA to get the Azure build pipeline back up?

@soiferj soiferj changed the title [Build][Windows] Fix Windows build [Build][Windows] Fix Windows build by including cctype Nov 12, 2019
@jmorrill
Copy link
Contributor

With the latest source from master, I do not get any build errors on the CMake generated tvm.sln.

I am using Visual Studio 2019 (cl.exe version 19.23.28106.4). What version are you using?

FWIW, your patch doesn't have any negative effects on my build ;)

@soiferj
Copy link
Contributor Author

soiferj commented Nov 12, 2019

I'm using VS 2017 (cl version 19.16.27032.1). Where does your compiler get std::isdigit from?

I think we should still check this in for safety.

@jmorrill
Copy link
Contributor

jmorrill commented Nov 12, 2019

I'm using VS 2017 (cl version 19.16.27032.1). Where does your compiler get std::isdigit from?

I believe mine is getting it from cctype also. Could Microsoft have refactored some other std header in 2019 that inadvertently includes cctype?

If that is the case I would agree with checking it in for safety.

@jmorrill
Copy link
Contributor

jmorrill commented Nov 12, 2019

I compiled file \tvm\nnvm\src\top\tensor\transform.cc with /showIncludes because it uses std::isdigit and found the only reference to cctype here:

1>Note: including file:    C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.23.28105\include\string
1>Note: including file:     C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.23.28105\include\cctype

Appears 'string' is pulling in cctype with 2019?

@jmorrill
Copy link
Contributor

Ok thats it. string pulls in cctype in VS2019 and does not in 2017

Following builds in 2019 and does not in 2017.

#include <iostream>
#include <string>

int main()
{
    auto x = std::isdigit('5');
    std::cout << "Hello World!\n";
}

@soiferj
Copy link
Contributor Author

soiferj commented Nov 12, 2019

Thanks a lot for the investigation - that's a useful finding. There should be no harm in adding this include :)

@soiferj
Copy link
Contributor Author

soiferj commented Nov 13, 2019

@tqchen looks like there's a CI error impacting all PRs. It just says "process terminated". Is this a known issue?

@tqchen
Copy link
Member

tqchen commented Nov 13, 2019

Hmm, would due to CI overloaded and throttling and timeout, I will look into this.

@yzhliu yzhliu merged commit d9b8a6c into apache:master Nov 14, 2019
@yzhliu
Copy link
Member

yzhliu commented Nov 14, 2019

Thanks @soiferj @jmorrill @tqchen

zxy844288792 pushed a commit to zxy844288792/tvm that referenced this pull request Nov 15, 2019
* Fix build

* dummy change to retrigger CI

* dummy change to retrigger ci

* dummy change to retrigger ci
zxy844288792 pushed a commit to zxy844288792/tvm that referenced this pull request Nov 15, 2019
* Fix build

* dummy change to retrigger CI

* dummy change to retrigger ci

* dummy change to retrigger ci
kevinthesun pushed a commit to neo-ai/tvm that referenced this pull request Nov 25, 2019
* [TOPI][OP] Support Faster-RCNN Proposal OP on CPU (apache#4297)

* Support Proposal operator on CPU.

* PyLint space issue

* PyLint space issue

* Pylint singleton-comparison issue

* [QNN][Legalize] Specialize for Platforms without any fast Int8 arithmetic units. (apache#4307)

* fix error when memory_id is VTA_MEM_ID_OUT (apache#4330)

* [CI][DOCKER] Add ONNX runtime dep (apache#4314)

* [DOCKER] Add ONNX runtime dep

* Improve ci script

* [QNN] Quantize - Fixing the sequence of lowering. (apache#4316)

* [QNN] Use Int16 upcast in Fallback Conv2D. Fix test names. (apache#4329)

* [doc][fix] fix sphinx parsing for pass infra tutorial (apache#4337)

* change ci image version (apache#4313)

* [Codegen] remove fp16 function override for cuda  (apache#4331)

* add volatile override back

* [codegen] remove fp16 function override for cuda

* [CI] Set workspace to be per executor (apache#4336)

* [Build][Windows] Fix Windows build by including cctype (apache#4319)

* Fix build

* dummy change to retrigger CI

* dummy change to retrigger ci

* dummy change to retrigger ci

* Enable hipModuleGetGlobal() (apache#4321)

* [Relay][Pass] Add pass to remove unused functions in relay module (apache#4334)

* [Relay][Pass] Add pass to remove unused functions in relay module

* Add tests

* Fix lint

* Fix visit order

* Add pass argument

* Fix

* Add support for quant. mul operator in tflite frontend (apache#4283)

A test for qnn_mul has to be added when the qnn elemwise tests (apache#4282) get merged.

* Add topi.nn.fifo_buffer to TVM doc (apache#4343)

* Solve custom model of prelu (apache#4326)

* Deprecate NNVM warning msg (apache#4333)

* [Contrib] Add MKL DNN option (apache#4323)

* [Contrib] Add MKL DNN

* update

* update

* [Relay][Frontend][TF] Fix transpose when axes is not a param (apache#4327)

* [Relay][Frontend][TF] Use _infer_value_simulated when axes is not a const to Transpose

* uncomment tests

* dummy change to retrigger ci

* [RUNTIME] Add device query for AMD GcnArch (apache#4341)

* add gcnArch query

* kGcnArch query for cuda is a no-op

* [Test][Relay][Pass] Add test case for lambda lift (apache#4317)

* [Relay][Frontend][ONNX] operator support: DepthToSpace, SpaceToDepth (apache#4271)

* imp module is deprecated (apache#4275)

* [VTA] Bug fix for padded load with large inputs (apache#4293)

* bug fix for padded load with large inputs

* Update TensorLoad.scala

* Update test_vta_insn.py

* fix inconsistent tag name (apache#4134)

* [CodeGen] Add build config option disable_assert to control whether to generate assert (apache#4340)

* Bump up CUDA log version in tophub.py (apache#4347)

* Add check to ensure input file was successfully opened in NNVM deploy code demo (apache#4315)

* [COMMUNITY] Add DISCLAIMER, KEYS for ASF release (apache#4345)

* [COMMUNITY] Add DISCLAIMER, KEYS for ASF release

* Add file name spec

* [Relay][VM][Interpreter] Enable first-class constructors in VM and interpreter via eta expansion (apache#4218)

* Fix constructor pretty printing

* Make Module::HasDef name consistent with API

* Add VM constructor compilation via eta expansion

* Lint

* Fix CI

* Fix failing test

* Address comment

* Retrigger CI

* Retrigger CI

* Update dmlc_tvm_commit_id.txt
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants