# HG changeset patch
# User Francis Clarke <francis.w.clarke@gmail.com>
# Date 1304759965 -3600
# Node ID 7c77679f782c46f1b7caaa04f39a0ba7fc82c968
# Parent  e82f2e84f3e06005db7b5498972d898ef3944d37
Trac 11307: failing to coerce into relative number fields

diff -r e82f2e84f3e0 -r 7c77679f782c sage/rings/number_field/number_field_rel.py
--- a/sage/rings/number_field/number_field_rel.py	Mon Apr 25 10:13:01 2011 +0100
+++ b/sage/rings/number_field/number_field_rel.py	Sat May 07 10:19:25 2011 +0100
@@ -887,6 +887,16 @@
             sage: L(L.polynomial_ring().random_element())
             (z^5 + 1/3*z^4 - z^3 + z^2 - z + 2/3)*a + 1/4*z^5 - 7/2*z^4 + 5/3*z^3 - 1/4*z^2 + 3/2*z - 1
 
+        Examples from Trac \#11307::
+
+            sage: L = NumberField([x^2 + 1, x^2 - 3], 'a')
+            sage: L(L)
+            Traceback (most recent call last):
+            ...
+            TypeError: <class 'sage.rings.number_field.number_field_rel.NumberField_relative_with_category'>
+            sage: L in L
+            False
+
         MORE TESTS:
         We construct the composite of three quadratic fields, then
         coerce from the quartic subfield of the relative extension::
@@ -963,7 +973,11 @@
             f = R( [ K(coeff) for coeff in x.list() ] )
             return self._element_class(self, f(self.gen()).polynomial() )
         else:
-            return self._element_class(self, x._rational_())
+            try:
+                return self._element_class(self, x._rational_())
+            except AttributeError:
+                pass
+            raise TypeError, type(x)
 
     def _coerce_map_from_(self, R):
         """
