remark

Diagnostic 29: expected an expression

Cause:
There are many possible reasons for this diagnostic message being emitted by the Intel C++ Compiler. One is from the lambda usage in the code and the option /Qstd=c++0x (-std=c++0x for Linux* and Mac OS* X) is not specified in the compiler options.

Example:

t.cpp 

  • Linux*
  • Apple Mac OS X*
  • Microsoft Windows* (XP, Vista, 7)
  • C/C++
  • Compilador C++ Intel®
  • Intel® Parallel Composer
  • error
  • warning
  • remark
  • Diagnostic 646: parameter of abstract class type

    Cause:
    When declaring a parameter with the type of an abstract base class

    Example:

    class CBase { virtual void foo() = 0; }; 
    class A: public CBase {
        void foo(); 
    }; 
    void testfoo(CBase b); // not allowed since the class is abstract 
    void testfoo_ok(A b); // ok 
    void testfoo_ok2(CBase* pB); // ok
    

    Command line output:

  • Linux*
  • Apple Mac OS X*
  • Microsoft Windows* (XP, Vista, 7)
  • C/C++
  • Compilador C++ Intel®
  • Intel® Parallel Composer
  • error
  • warning
  • remark
  • Páginas

    Assine o remark