Code::Blocks Forums

User forums => Nightly builds => Topic started by: killerbot on March 02, 2014, 10:17:54 am

Title: The 02 March 2014 build (9673.) is out.
Post by: killerbot on March 02, 2014, 10:17:54 am
Get quick announcements through the RSS feed http://www.codeblocks.org/nightly/CodeBlock_RSS.xml

Before you use a nightly make sure you understand how it works (http://forums.codeblocks.org/index.php/topic,3232.0.html).

A link to the unicode windows wxWidget dll for Code::Blocks : http://prdownload.berlios.de/codeblocks/wxmsw28u_gcc_cb_wx2812_gcc481-TDM.7z

For those who might need this one (when no MingW installed on your system) : the mingw10m.dll : http://prdownload.berlios.de/codeblocks/mingwm10_gcc481-TDM.7z

The 02 March 2014 build is out.
  - Windows :
   http://prdownload.berlios.de/codeblocks/CB_20140302_rev9673_win32.7z
  - Linux :
   none

Resolved Fixed:


Regressions/Confirmed/Annoying/Common bugs:


Title: Re: The 02 March 2014 build (9673.) is out.
Post by: carra on March 03, 2014, 10:24:34 am
I haven't been able to reproduce it again, but the first time I run version 9673 I saw a popup telling me that 2 DLLs for plugins couldn't be loaded. Both were related to wxSmith, one is wxSmith.dll and the other one I can't remember (I couldn't take a screenshot in time).

It might be just me, but I thought I'd tell it here just in case...
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: Jenna on March 03, 2014, 10:29:40 am
On my server since yesterday:

Debian packages (binaries and sources) for 32-bit and 64-bit systems can be found in my debian-repo (http://apt.jenslody.de/).
Fedora packages (binaries and sources) for 32-bit and 64-bit systems (fc18, fc19, fc20 and rawhide) and RedHat/CentOS 5 and 6 packages (also 32-bit and 64-bit) can be found in my rpm-repo (http://rpm.jenslody.de) .
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: shurick on March 03, 2014, 01:20:26 pm
Packages for openSUSE 12.2 - 13.1 (http://download.opensuse.org/repositories/home:/NarkoZ:/Nightlies/) (binaries and sources) for 32-bit and 64-bit.
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: carra on March 03, 2014, 04:34:19 pm
Even though it's not related to version 9673 (it is MUCH older), I am going to report a bug in Code Completion since it seems to be the main improvement focus nowadays.

As far as I can remember, Code::Blocks has never provided autocompletion of a constructor's parameters within its initialization list. For instance, take this code:

Code
    ListCell::ListCell( P_Object First_, P_Object Rest_ )
    // - - - - - - - - - - - - - - - - - -
    :   First( First_ )  // <-- cursor HERE
    ,   Rest( Rest_ )
    // - - - - - - - - - - - - - - - - - -
    {
        // (do nothing)
    }

When the cursor is inside the braces, CC correctly handles First_ and Rest_. But if the cursor is on the line with the arrow, I am offered completion for First (i.e. the class attribute), but not for First_.

PD: Searched for this, found nothing. Excuse me if it had already been said somewhere...
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: ollydbg on March 04, 2014, 03:48:32 pm
Even though it's not related to version 9673 (it is MUCH older), I am going to report a bug in Code Completion since it seems to be the main improvement focus nowadays.

As far as I can remember, Code::Blocks has never provided autocompletion of a constructor's parameters within its initialization list. For instance, take this code:

Code
    ListCell::ListCell( P_Object First_, P_Object Rest_ )
    // - - - - - - - - - - - - - - - - - -
    :   First( First_ )  // <-- cursor HERE
    ,   Rest( Rest_ )
    // - - - - - - - - - - - - - - - - - -
    {
        // (do nothing)
    }

When the cursor is inside the braces, CC correctly handles First_ and Rest_. But if the cursor is on the line with the arrow, I am offered completion for First (i.e. the class attribute), but not for First_.

PD: Searched for this, found nothing. Excuse me if it had already been said somewhere...
First, thanks for the report, this is a feature request. Maybe, you can put it to BerliOS, but I suggest that the new Feature Request system will translated to Sourceforge, since BerliOS will be closed in one or two months.   ;)

See: Bug/feature reqeust move to Sourceforge (http://forums.codeblocks.org/index.php/topic,18540.0.html)
berlios will close project host in 2014.04 (http://forums.codeblocks.org/index.php/topic,18874.0.html)
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: ollydbg on March 05, 2014, 08:26:23 am
I try to extract the file wxmsw28u_gcc_cb_wx2812_gcc481-TDM.7z on a 64bit Windows 7 system with 7zip(64bit, latest alpha version), but it failed. The other 7z file works fine. Not surer what is the problem. It works OK on a 32bit Windows XP system (with 32bit 7zip). I download this file again, and the problem is gone, sorry for the noise.
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: carra on March 05, 2014, 09:15:12 am
Thanks ollydbg, I did submit the request to BerliOS (pretty much a copy-paste of my previous post). You can find it here: https://developer.berlios.de/feature/index.php?func=detailfeature&feature_id=5734&group_id=5358
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: White-Tiger on March 06, 2014, 03:04:00 am
since there are some CC improvements.... I would like to see some bugs fixed as well ;)
It happens from time to time that CC doesn't recognize specific functions, normally it's just 1-2 functions in a file... but using Microsoft MFC inside a project, almost completely kills CC.
As soon as a message map is used, CC is gone for everything below that.

Here's some test code (based on MFC code but slightly modified to minimize it)
Quote from: cpp
#define PTM_WARNING_DISABLE
#define PTM_WARNING_RESTORE
struct AFX_MSGMAP_ENTRY;
struct AFX_MSGMAP
{
   const AFX_MSGMAP* (*pfnGetBaseMap)();
   const AFX_MSGMAP_ENTRY* lpEntries;
};
#define BEGIN_MESSAGE_MAP(theClass, baseClass) \
   PTM_WARNING_DISABLE \
   const AFX_MSGMAP* theClass::GetMessageMap() const \
      { return GetThisMessageMap(); } \
   const AFX_MSGMAP* theClass::GetThisMessageMap() \
   { \
      typedef theClass ThisClass;                     \
      typedef baseClass TheBaseClass;                  \
      static const AFX_MSGMAP_ENTRY _messageEntries[] =  \
      {
#define END_MESSAGE_MAP() \
      {0, 0, 0, 0, 0, 0 } \
   }; \
      static const AFX_MSGMAP messageMap = \
      { &TheBaseClass::GetThisMessageMap, &_messageEntries[0] }; \
      return &messageMap; \
   }                          \
   PTM_WARNING_RESTORE
struct AFX_MSGMAP_ENTRY{
   int a,b,c,d,e,f;
};
class BaseClass{
   virtual AFX_MSGMAP* GetThisMessageMap();
public:
   virtual AFX_MSGMAP* GetMessageMap();
};
class SomeClass : public BaseClass{
   AFX_MSGMAP* GetThisMessageMap();
public:
   AFX_MSGMAP* GetMessageMap();
};

/// known functions
void mynonmissingfunc1(){
}
void mynonmissingfunc2(){
}

BEGIN_MESSAGE_MAP(SomeClass, BaseClass)
// [...]
END_MESSAGE_MAP()/// somehow ignored

//} }/// uncomment this to detect all functions (in my real world example, I didn't need two "}" but one)

/// unknown functions
void mymissingfunc1(){
}
void mymissingfunc2(){
}
void mymissingfunc3(){
}

PS: I once had to declare "AFX_MSGMAP_ENTRY" without forward declaration... and it worked... dunno if that was real or not xD
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: ollydbg on March 06, 2014, 03:31:28 am
since there are some CC improvements.... I would like to see some bugs fixed as well ;)
It happens from time to time that CC doesn't recognize specific functions, normally it's just 1-2 functions in a file... but using Microsoft MFC inside a project, almost completely kills CC.
As soon as a message map is used, CC is gone for everything below that.

Here's some test code (based on MFC code but slightly modified to minimize it)
...
Hi, firstly, thanks for the minimal code. We have already said that CC's parsing don't expand macros on every Token. So
Code
BEGIN_MESSAGE_MAP(SomeClass, BaseClass)
// [...]
END_MESSAGE_MAP()
When it see BEGIN_MESSAGE_MAP, it don't expand it, same as END_MESSAGE_MAP().
The method you can do is to add one rule (manually replacement rule) in CC's setting dialog.
Code
BEGIN_EVENT_TABLE -> -END_EVENT_TABLE
So, those blocks were ignored. I think the document of such option should be updated in Code Completion Design - CodeBlocks (http://wiki.codeblocks.org/index.php?title=Code_Completion_Design#AAAAA_-.3E_-BBBBB), currently it is wrong.

Also, if CC did try to expand every token, then it should work. See Huki's comments here: Re: X Macro (http://forums.codeblocks.org/index.php/topic,19024.msg130202.html#msg130202). Your problem is much like the X Macro problem.


Quote
PS: I once had to declare "AFX_MSGMAP_ENTRY" without forward declaration... and it worked... dunno if that was real or not xD
Not fully understand this sentence, can you show a minimal sample code? Thanks.
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: White-Tiger on March 06, 2014, 03:21:51 pm
[...]
Code
BEGIN_MESSAGE_MAP(SomeClass, BaseClass)
// [...]
END_MESSAGE_MAP()
When it see BEGIN_MESSAGE_MAP, it don't expand it, same as END_MESSAGE_MAP().
[...]
are you sure about that? I've also tried to define my braces this way:
#define WHATEVER }}
WHATEVER
and it worked.... also "BEGIN_MESSAGE_MAP" doesn't seem like it's ignored since that's were the braces come from...
Further more it knows that GetMessageMap and GetThisMessageMap are implemented at the "BEGIN_MESSAGE_MAP" macro.
So it's definitely the end that doesn't work at all. (uncommenting "BEGIN_*" also fixes the parser :P)

[...]
The method you can do is to add one rule (manually replacement rule) in CC's setting dialog.
Code
BEGIN_EVENT_TABLE -> -END_EVENT_TABLE
So, those blocks were ignored. I think the document of such option should be updated in Code Completion Design - CodeBlocks (http://wiki.codeblocks.org/index.php?title=Code_Completion_Design#AAAAA_-.3E_-BBBBB), currently it is wrong.
at least a work around in this case... thanks

Also, if CC did try to expand every token, then it should work. See Huki's comments here: Re: X Macro (http://forums.codeblocks.org/index.php/topic,19024.msg130202.html#msg130202). Your problem is much like the X Macro problem.
[...]
well... "Parse complex macros (needs more time)" is enabled :P Guess otherwise BEGIN_EVENT_TABLE wouldn't even be expanded... but END_EVENT_TABLE doesn't work and that is a bug.
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: zinat on May 19, 2014, 07:44:13 pm
Trying to download build 9673 but the links doesn't seem to work.. any other way??
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: Alpha on May 19, 2014, 08:54:12 pm
Trying to download build 9673 but the links doesn't seem to work.. any other way??
Do binaries from SourceForge (http://sourceforge.net/projects/codeblocks.berlios/files/) work for you?
Title: Re: The 02 March 2014 build (9673.) is out.
Post by: ollydbg on October 06, 2014, 07:00:37 am
@White-Tiger: Some further discussion about expansion the event macros, see here: Re: Several improvements to Code Completion plugin (http://forums.codeblocks.org/index.php/topic,18315.msg134528.html#msg134528)