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
Hot Topic (More than 8 Replies) Intellisense stopped working after update (Read 8329 times)
Mikaka1
Junior Member
**
Offline


Posts: 10
Joined: Sep 19th, 2014
Intellisense stopped working after update
Nov 13th, 2015 at 5:37pm
Print Post  
Hi, sorry if I have missed some topic about possible fix, but I couldn't find anything.
I've updated my project from old Visual Micro plugin (standalone installer) to Visual Studio extension, and at the same time converted the project from VS 2013 to VS 2015.
The problem is intellisense stopped working, it's not like the other topics where intellisense complains about something missing it stopped working completely. There is no coloring, no suggestions, nothing.

If someone could point me in the right direction on how to reset/refresh intellisense, I would be grateful for any help.
Also I need to point that the same solution has other projects which are not Arduino projects. Intellisense works just fine there. Thanks in advance Smiley

I'm using newest Visual Micro, updated today, VS 2015 community edition.
I tried saving the project, deleting and readding files to this project, reloading toolchains, deleting project and cloning from repo again, changed the Visual Micro option "Always readd header", tried to change "Use intellisense fallback location" but it didn't let me.
  
Back to top
 
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12076
Location: United Kingdom
Joined: Apr 10th, 2010
Re: Intellisense stopped working after update
Reply #1 - Nov 13th, 2015 at 7:07pm
Print Post  
Hi,

If you switch board to a different selection then re-select your required board does that fix intellisense?

Did you install C++ for 2015?

Does the compile work?

Thanks
  
Back to top
WWW  
IP Logged
 
Mikaka1
Junior Member
**
Offline


Posts: 10
Joined: Sep 19th, 2014
Re: Intellisense stopped working after update
Reply #2 - Nov 16th, 2015 at 6:26pm
Print Post  
Hello, sorry for my late response, and thank you for your response.
Yes I tried switching board and it doesn't fix the problem.

I guess C++ for VS 2015 is installed, because I can create, build and run c++ projects.
Yes the project compiles fine.

Best regards
  
Back to top
 
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12076
Location: United Kingdom
Joined: Apr 10th, 2010
Re: Intellisense stopped working after update
Reply #3 - Nov 16th, 2015 at 7:25pm
Print Post  
Ok thanks for info.

1)
Which board are you using?

2)
Which Arduino Ide version?

3)
Make sure the project is not set to x64. It must be x86 or win32. You can change this on the toolbar or in "Build>Configuration Manager"

4)
Please switch on "tools>options>visual micro>compiler>show build properties" and also switch on "verbose"
Then email the output after a build to info[at]visualmicro.com

Thanks
« Last Edit: Nov 16th, 2015 at 7:26pm by Tim@Visual Micro »  
Back to top
WWW  
IP Logged
 
Mikaka1
Junior Member
**
Offline


Posts: 10
Joined: Sep 19th, 2014
Re: Intellisense stopped working after update
Reply #4 - Nov 18th, 2015 at 10:55pm
Print Post  
Hi, thanks for your response.
I'm sorry there is something broken and it seems the code doesn't compile.
The intellisense coloring came back after I reinstalled VisualAssistX to VS2015, but I know something is still wrong, because it doesn't do coloring in the .ino file.
I have to put this problem on hold until I resolve why compilation fails. Now I think my problem is related to: http://www.visualmicro.com/forums/YaBB.pl?num=1447430981

1) Board is Sanguino with ATmega1284p with changed F_CPU to 20 MHz, because I run it with external oscillator

2) Arduino IDE 1.0.6, didn't switched to newer version because the boards.txt file entries I have for sanguino are incompatible with newer version

3) Checked, it is set to win32

4) I will send you two outputs, both from VisualMicro and ArduinoIDE


I thought that program compiled fine before, but it turns out it did compile because it was reusing existing compiled object files.
I switched off incremental compilation in VisualMicro options.
Now the project fails to compile, complaining about missing things. For example it cannot find Wire.h

I already tried removing the project and restoring it. By restoring it I mean, I created a new Arduino project, and copied the source files into it. Unfortunately this doesn't help.

I've analyzed the output of both Visual Micro build and Arduino IDE compilation process. I've found a problem, but don't know what's causing it.

Whenever compiler is invoked, it doesn't get passed dependencies in VisualMicro. I'll show example for one file I'm using: DS1307RTC.cpp

Here is VisualMicro compilation for this file:
Code
Select All
D:\Programy\arduino-1.0.6\hardware\tools\avr\bin\avr-g++ -c -g -Os -fno-exceptions -ffunction-sections -fdata-sections -Wall -mmcu=atmega1284p -DF_CPU=20000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=106 -I"D:\Programy\arduino-1.0.6\hardware\arduino\cores\arduino" -I"D:\Programy\arduino-1.0.6\hardware\Sanguino\variants\sanguino" -o m\DS1307RTC\DS1307RTC.cpp.o"  "C:\Users\Mikaka\Documents\Arduino\libraries\DS1307RTC\DS1307RTC.cpp" 



And here is compilation for Arduino IDE:
Code
Select All
D:\Programy\arduino-1.0.6\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega1284p -DF_CPU=20000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=106 -ID:\Programy\arduino-1.0.6\hardware\arduino\cores\arduino -ID:\Programy\arduino-1.0.6\hardware\Sanguino\variants\sanguino -ID:\Programy\arduino-1.0.6\libraries\Wire -IC:\Users\Mikaka\Documents\Arduino\libraries\smart_ptr -IC:\Users\Mikaka\Documents\Arduino\libraries\Time -IC:\Users\Mikaka\Documents\Arduino\libraries\DS1307RTC -IC:\Users\Mikaka\Documents\Arduino\libraries\Sim900 -IC:\Users\Mikaka\Documents\Arduino\libraries\AESLib -IC:\Users\Mikaka\Documents\Arduino\libraries\http_parser -IC:\Users\Mikaka\Documents\Arduino\libraries\DS1307RTC\utility C:\Users\Mikaka\Documents\Arduino\libraries\DS1307RTC\DS1307RTC.cpp -o RTC.cpp.o 



As you can see VisualMicro fails to pass all the necessary directories to the compiler itself. I still can see all these directories in "Additional Include Directories" setting in Visual Studio. This causes following error just below above line:
Code
Select All
DS1307RTC.cpp:25:18: warning: Wire.h: No such file or directory
DS1307RTC.cpp:In file included from
DS1307RTC.h:15:18: warning: Time.h: No such file or directory
DS1307RTC.cpp:In file included from
DS1307RTC.h:23: error: 'time_t' does not name a type
DS1307RTC.h:24: error: 'time_t' has not been declared
DS1307RTC.h:25: error: 'tmElements_t' has not been declared
DS1307RTC.h:26: error: 'tmElements_t' has not been declared
DS1307RTC.cpp:In constructor 'DS1307RTC::DS1307RTC()
DS1307RTC.cpp:32: error: 'Wire' was not declared in this scope
DS1307RTC.cpp:At global scope
DS1307RTC.cpp:36: error: 'time_t' does not name a type
DS1307RTC.cpp:43: error: variable or field 'set' declared void
DS1307RTC.cpp:43: error: 'time_t' was not declared in this scope
DS1307RTC.cpp:54: error: variable or field 'read' declared void
DS1307RTC.cpp:54: error: 'tmElements_t' was not declared in this scope
DS1307RTC.cpp:54: error: 'tm' was not declared in this scope
DS1307RTC.cpp:85: error: variable or field 'write' declared void
DS1307RTC.cpp:85: error: 'tmElements_t' was not declared in this scope
DS1307RTC.cpp:85: error: 'tm' was not declared in this scope 

  
Back to top
 
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12076
Location: United Kingdom
Joined: Apr 10th, 2010
Re: Intellisense stopped working after update
Reply #5 - Nov 19th, 2015 at 12:03pm
Print Post  
Hi,

I see a lot of warnings and problems with both outputs that you sent however the arduino ide output is incomplete. 

Can you confirm the following:-

1) When you include libraries into the sketch you use the menu item or toolbar command that does this for you? (This way we know you included the correct files)

2) The error you sent shows an #include for the wire library is missing from your code. When you included libraries that require other libraries (such as the Wire library) you must also include in the sketch. Do you have #include "wire.h" in your code?

3) Are the outputs you supplied from exactly the same source code or do you have two seperate projects to test each ide?

It certainly helps with testing now we know you are using arduino 1.0.6 but as yet I just see known and obvious errors. Hopefully you can answer the above questions before I look at this some more.

Thanks
« Last Edit: Nov 19th, 2015 at 12:04pm by Tim@Visual Micro »  
Back to top
WWW  
IP Logged
 
Mikaka1
Junior Member
**
Offline


Posts: 10
Joined: Sep 19th, 2014
Re: Intellisense stopped working after update
Reply #6 - Nov 19th, 2015 at 3:51pm
Print Post  
Hi, I know there are a lot of warnings, I'll fix them sometime Smiley

I'll answer your questions as best as I can:
1) No I don't do that. When i used the all VisualMicro addin for VS I just added the library code to Documents/Arduino/libraries/<libname> and then I include it in main sketch, and use it. I do the same thing here. Is it a requirement to use the menu?

2) Yes I have the include for Wire.h, these are the includes in the main sketch file (there is only one, rest is just plain .h .c and .cpp files):
Code
Select All
//Global definitions
#include "GlobalDefinitions.h"

//Utility
#include <Wire.h>
#include "Bitset.h"
#include "ByteBuffer.h"
#include "ByteArray.h"
#include "Vector.h"
#include "Deque.h"
#include "smart_ptr.h"

//Time handling
#include <Time.h>
#include <DS1307RTC.h>

//GSM and connection handling
#include <Sim900.h>
#include "ConnectionHandler.h"
#include "GSMConnectionHandler.h"

//Encryption
#include <AESLib.h>
#include "AESCrypto.h"
#include "ArduinoAESCrypto.h"

//Keyboard handling
#include "KeyboardHandler.h"
#include "ArduinoKeyboardHandler.h"

//Screen reader
#include "ScreenReader.h"
#include "HD44780ScreenReader.h"

//Http handling
#include <http_parser.h>
#include "HttpPacket.h"
#include "HttpParser.h"

//Message
#include "Message.h"
#include "MessageV1.h"

//Packets
#include "Packet.h"
#include "PacketCoreV1.h"
#include "CommandPacketCoreV1.h"
#include "PacketBonusV1.h"
#include "DataPacketBonusV1.h"

//Filesystem
#include "File.h"
#include "Memory.h"
#include "EepromMemory.h"

//Controller
#include "Controller.h"

using namespace smart_ptr; 



3) Yes the outputs are from the same source code. I just open the Visual Studio project on disk and double click on the .ino file. Then it opens the whole project in Arduino IDE.

Thanks in advance for any help Smiley
  
Back to top
 
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12076
Location: United Kingdom
Joined: Apr 10th, 2010
Re: Intellisense stopped working after update
Reply #7 - Nov 23rd, 2015 at 7:17pm
Print Post  
Hi,

Thanks for the info and sorry for the delay.

I can see that for arduino 1.0x versions that all library paths are not being added to the compiler statement of every library. There will be a fix over the next few days.

Thanks again
  
Back to top
WWW  
IP Logged
 
Tim@Visual Micro
Administrator
*****
Offline


Posts: 12076
Location: United Kingdom
Joined: Apr 10th, 2010
Re: Intellisense stopped working after update
Reply #8 - Nov 24th, 2015 at 12:20pm
Print Post  
The 1511.23 update from yesterday fixes library compile for older Arduino 1.0.x versions
  
Back to top
WWW  
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint