[cfe-dev] Fix to the exception specifications type checking

Nicola Gigante nicola.gigante at gmail.com
Tue Dec 8 14:22:58 PST 2009

Il giorno 08/dic/2009, alle ore 22.01, Douglas Gregor ha scritto:

> There's an easier way to tell if a type is being defined. RecordType has an isBeingDefined() function that will tell you if that type is currently being defined.

Thanks! Then the patch is very easy, you find it attached. I've also uncommented that line in the test exception-spec.cpp. At least this is a try, because I'm not sure about a detail. Suppose we have a nested class that contains a method that throws the outer class:

class A {
   class B {
      void f() throw(A);

Is this legal? If it is, no problem.

If it isn't, my patch doesn't do the job because isBeingDefined() still returns true.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: core-issue-437.patch
Type: application/octet-stream
Size: 1548 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20091208/48947d96/attachment.obj>

More information about the cfe-dev mailing list