<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:sepavloff@gmail.com" title="Serge Pavlov <sepavloff@gmail.com>"> <span class="fn">Serge Pavlov</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED WORKSFORME - Missed semicolon after class leads to segfault"
   href="http://llvm.org/bugs/show_bug.cgi?id=12883">bug 12883</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>REOPENED
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">CC</td>
           <td>
                
           </td>
           <td>sepavloff@gmail.com
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>WORKSFORME
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED WORKSFORME - Missed semicolon after class leads to segfault"
   href="http://llvm.org/bugs/show_bug.cgi?id=12883#c8">Comment # 8</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED WORKSFORME - Missed semicolon after class leads to segfault"
   href="http://llvm.org/bugs/show_bug.cgi?id=12883">bug 12883</a>
              from <span class="vcard"><a class="email" href="mailto:sepavloff@gmail.com" title="Serge Pavlov <sepavloff@gmail.com>"> <span class="fn">Serge Pavlov</span></a>
</span></b>
        <pre>Current version if clang doesn't crash on this file:

$ clang -v
clang version 3.4 (trunk 186143)
Target: x86_64-unknown-linux-gnu
Thread model: posix

$ clang++ --std=c++11 dummy-luSc32.ii 
In file included from dummy.cpp:1:
dummy.cpp:5:33: error: unknown class name 'exception'; did you mean
'std::exception'?
class InvariantFailure : public exception
                                ^~~~~~~~~
                                std::exception
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/exception:60:9:
note: 'std::exception' declared here
  class exception
        ^
In file included from dummy.cpp:1:
dummy.cpp:9:21: error: extra qualification on member 'InvariantFailure'
  InvariantFailure::InvariantFailure(std::string &msg) : message(msg) {};
  ~~~~~~~~~~~~~~~~~~^
dummy.cpp:10:23: error: exception specification of overriding function is more
lax than base version
  virtual const char *what() const { return this->message; }
                      ^
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/exception:68:25:
note: overridden virtual function is here
    virtual const char* what() const throw();
                        ^
In file included from dummy.cpp:1:
dummy.cpp:10:45: error: no viable conversion from 'const std::string' (aka
'const basic_string<char>') to 'const char *'
  virtual const char *what() const { return this->message; }
                                            ^~~~~~~~~~~~~
dummy.cpp:11:2: error: expected ';' after class
}
 ^
 ;
dummy.cpp:22:13: error: no matching function for call to 'vsnprintf'
 int size = vsnprintf(buf.c_str(), 0, fmt, args);
            ^~~~~~~~~
/usr/include/stdio.h:391:12: note: candidate function not viable: 1st argument
('const char *') would lose const qualifier
extern int vsnprintf (char *__restrict __s, size_t __maxlen,
           ^
In file included from dummy.cpp:1:
dummy.cpp:24:3: error: use of undeclared identifier 'dbg'
  dbg("vsnprintf failed!");
  ^
dummy.cpp:29:9: error: no matching function for call to 'vsnprintf'
 size = vsnprintf(buf.c_str(), size, fmt, args);
        ^~~~~~~~~
/usr/include/stdio.h:391:12: note: candidate function not viable: 1st argument
('const char *') would lose const qualifier
extern int vsnprintf (char *__restrict __s, size_t __maxlen,
           ^
In file included from dummy.cpp:1:
dummy.cpp:31:3: error: use of undeclared identifier 'dbg'
  dbg("vsnprintf failed!");
  ^
9 errors generated.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>