Before logging an issue, please update to the latest release of Visual Micro from the Downloads Page.

When Logging a Support Issue in the Forum, please ensure you have also:-

  • Enabled vMicro > Compiler > Show Build Properties
  • Re-Compile your program with these settings enabled
 
Save the new Output to a Text File and....
  • Click the Reply button and attach as .txt file OR
  • Click here to Email us with the file attached, and a link to your post
Support requests without the output above may be impossible to answer, so please help us to help you
 
Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic VS 2015 + Arduino 101 - Incorrect errors shown, that disappear when clicked! (Read 2638 times)
cerberus
Newbies
*
Offline


Posts: 3
Joined: Dec 24th, 2016
VS 2015 + Arduino 101 - Incorrect errors shown, that disappear when clicked!
Dec 28th, 2016 at 5:34am
Print Post  
Board Type : Intel 101
BN: Arduino/Genuino 101
VID: 8087
PID: 0AB6

Arduino IDE Version : 1.6.12
Visual Micro Arduino IDe for VS plugin : 1605.14.0
Visual Studio 2015 Community Version : 14.0.24720.00 Update 1

Im using an Arduino 101 - the Intel Curie model. I'm just getting the built in General Vision 128 node hardware neural network working.

I build the project using the 101 libs and tool chain.

I however get his in my errors view

Severity    Code    Description    Project    File    Line    Suppression State
Error (active)        more than one instance of overloaded function "utoa" has 'C' linkage    helpme    \arduino\stdlib_noniso.h    36   
Error (active)        more than one instance of overloaded function "itoa" has 'C' linkage    helpme    \arduino\stdlib_noniso.h    32   
Error (active)        more than one instance of overloaded function "atol" has 'C' linkage    helpme    \arduino\stdlib_noniso.h    28   
Error (active)        more than one instance of overloaded function "atoi" has 'C' linkage    helpme    \arduino\stdlib_noniso.h    26   
Error (active)        more than one instance of overloaded function "atof" has 'C' linkage    helpme    \arduino\stdlib_noniso.h    30   
Error (active)        #error directive: "Unable to determine type definition of intptr_t"    helpme    1\arc-elf32\include\sys\_intsup.h    82   
Error (active)        #error directive: "Unable to determine type definition of int32_t"    helpme    1\arc-elf32\include\sys\_intsup.h    89   

What's weird is the fact I click on the first error, and it shows me the definition for the utoa function, and then the first 5 errors vanish the instant the file is opened, there are now only the last 2 errors showing. I'm not sure why they would suddenly disappear, but I assume its to do with my paths to header file includes for the pre-processor ?

When I click on the first file it takes me in VS to

\arduino

stdlib_noniso.h

Which is the correct file for the Arduino 101, as the Arduino15 folder is the Intel 101 libs and headers.
When I do that the first errors vanish and leaves me with 2, when i click on the first of those I get

1\arc-elf32\include\sys\_intsup.h

_intsup.h

come up in the editor, on this line

#if (__INT32_TYPE__ == 4 || __INT32_TYPE__ == 6)
#define _INT32_EQ_LONG
#elif __INT32_TYPE__ == 2
/* Nothing to define because int32_t is safe to print as an int. */
#else
#error "Unable to determine type definition of int32_t"
#endif

So it doesnt know the size of int, whether its 2 or 4 bytes. Obviously the 101 is a 32 bit machine, so its a 4 byte int fot the compiler. So I presume a file that is being pulled in should be pre-prcoessor #define'ing the 32/4 byte int size ?

Anyway, after all this, the file does actually compile, and i can upload it to the 101. So really it;s just a huge red herring. I still spent some time wasted on it though.

Marcus.
« Last Edit: Jan 16th, 2017 at 6:54pm by Tim@Visual Micro »  
Back to top
 
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12191
Location: United Kingdom
Joined: Apr 10th, 2010
Re: Visual Studio 2015 plugin - Incorrect errors shown, that disappear when clicked!
Reply #1 - Jan 16th, 2017 at 6:53pm
Print Post  
Thanks for the post and sorry I missed it earlier.

The VS intellisense often needs to find additional low level includes which it doesn't have paths for. The design of Aruino doesn't cater for these paths to be discovered outside of the toolchain. Therefore Visual Micro often has to force additional include paths (or #defines) specific to the hardware.

I will look to see where these types are defined and get them included. Can you please confirm you are using the  Arduino/Genuino 101 so I can test with the same setup.

note

If you press F12 on __INT32_TYPE__ you should see an error dialog informing you it can't find the definition of __INT32_TYPE__. This will indicate more intellisense paths are required.

Thanks
« Last Edit: Jan 16th, 2017 at 6:55pm by Tim@Visual Micro »  
Back to top
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint