Bug 533239 - program is launched despite build fails - using internal builder
Summary: program is launched despite build fails - using internal builder
Status: NEW
Alias: None
Product: CDT
Classification: Tools
Component: cdt-build (show other bugs)
Version: 9.4.3   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: cdt-build-inbox@eclipse.org CLA
QA Contact: Jonah Graham CLA
URL:
Whiteboard:
Keywords: consistency
Depends on:
Blocks:
 
Reported: 2018-04-05 01:51 EDT by Vitek Vlcek CLA
Modified: 2020-09-04 15:24 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vitek Vlcek CLA 2018-04-05 01:51:23 EDT
Hi,

given: I select the internal builder in C/C++ project settings, C/C++ build, builder settings. And my source is not in compilable state.
when: I press launch button.
then:   Program is executed.  (I missing window Errors in Workspace, Error exist in the active configuration of project "xxxxx"/ Proceed with launch?)


If I select the external builder in C/C++ project settings, C/C++ build, builder settings. And my source is not in compilable state. And repreat same process again I get window "Errors in Workspace, Error exist in the active configuration of project "xxxxx"/ Proceed with launch?"


console log from internal builder run:
07:21:13 **** Incremental Build of configuration Debug for project arduino-wattercounting-catch ****
Info: Internal Builder is used for build
g++ -DUNIT_TEST -I/home/vlcvi01/Dropbox/eclipse-workspaces/arduino-test/arduino-wattercounting-catch/fakeit -I/home/vlcvi01/Dropbox/eclipse-workspaces/arduino-test/arduino-wattercounting-catch/src -O0 -g3 -ftest-coverage -fprofile-arcs -Wall -c -fmessage-length=0 -pthread -o test/watterpulsecounting-integration-test.o ../test/watterpulsecounting-integration-test.cpp 
../test/watterpulsecounting-integration-test.cpp: In lambda function:
../test/watterpulsecounting-integration-test.cpp:81:63: error: 'i' is not captured
   When(Method(ArduinoFake(), millis)).AlwaysDo([](...){return i+=20000;});
                                                               ^
../test/watterpulsecounting-integration-test.cpp:81:49: note: the lambda has no capture-default
   When(Method(ArduinoFake(), millis)).AlwaysDo([](...){return i+=20000;});
                                                 ^
../test/watterpulsecounting-integration-test.cpp:80:17: note: 'long unsigned int i' declared here
   unsigned long i=0;
                 ^
../test/watterpulsecounting-integration-test.cpp: In function 'void ____C_A_T_C_H____T_E_S_T____0()':
../test/watterpulsecounting-integration-test.cpp:81:73: error: no matching function for call to 'fakeit::WhenFunctor::MethodProgress<long unsigned int>::AlwaysDo(____C_A_T_C_H____T_E_S_T____0()::<lambda(...)>)'
   When(Method(ArduinoFake(), millis)).AlwaysDo([](...){return i+=20000;});
                                                                         ^
In file included from /home/vlcvi01/Dropbox/eclipse-workspaces/arduino-test/arduino-wattercounting-catch/fakeit/ArduinoFake.h:11:0,
                 from ../test/watterpulsecounting-integration-test.cpp:3:
/home/vlcvi01/Dropbox/eclipse-workspaces/arduino-test/arduino-wattercounting-catch/fakeit/fakeit/fakeit.hpp:7164:22: note: candidate: void fakeit::MethodStubbingProgress<R, arglist>::AlwaysDo(std::function<R(const typename fakeit::test_arg<arglist>::type ...)>) [with R = long unsigned int; arglist = {}]
         virtual void AlwaysDo(std::function<R(const typename fakeit::test_arg<arglist>::type...)> method) {
                      ^~~~~~~~
/home/vlcvi01/Dropbox/eclipse-workspaces/arduino-test/arduino-wattercounting-catch/fakeit/fakeit/fakeit.hpp:7164:22: note:   no known conversion for argument 1 from '____C_A_T_C_H____T_E_S_T____0()::<lambda(...)>' to 'std::function<long unsigned int()>'

07:21:16 Build Finished (took 2s.931ms)

subsequent problem, when executable file is not found, Error with stack trace shown
java.io.FileNotFoundException: /home/vlcvi01/Dropbox/eclipse-workspaces/arduino-test/arduino-wattercounting-catch/Debug/arduino-wattercounting-catch not found
	at org.eclipse.cdt.launch.AbstractCLaunchDelegate2.verifyProgramPath(AbstractCLaunchDelegate2.java:684)
	at org.eclipse.cdt.launch.internal.LocalRunLaunchDelegate.checkBinaryDetails(LocalRunLaunchDelegate.java:260)
	at org.eclipse.cdt.launch.internal.LocalRunLaunchDelegate.runLocalApplication(LocalRunLaunchDelegate.java:88)
	at org.eclipse.cdt.launch.internal.LocalRunLaunchDelegate.launch(LocalRunLaunchDelegate.java:76)
	at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:885)
	at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:739)
	at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1039)
	at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1256)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:56)


-- Configuration Details --
Product: Eclipse 4.7.3.20180308-1800 (org.eclipse.epp.package.java.product)Installed Features:
 org.eclipse.wst.xml_ui.feature 3.9.2.v201801171858