diff --git a/convert.ml b/convert.ml
index 70069ae62ab2523c0b93c362efe85bd06d6339e0..7a600ceb690bb5cdf5fefdb7f901004ae2129529 100644
--- a/convert.ml
+++ b/convert.ml
@@ -306,7 +306,7 @@ let rec make_addrof e =
                { e with expr_node = COMMA (List.rev ((make_addrof a) :: l))})
     | NOTHING | UNARY _ | LABELADDR _ | BINARY _ | CALL _ | CONSTANT _
     | EXPR_SIZEOF _ | TYPE_SIZEOF _ | EXPR_ALIGNOF _ | TYPE_ALIGNOF _
-    | GNU_BODY _ | EXPR_PATTERN _ | CAST _ ->
+    | GNU_BODY _ | EXPR_PATTERN _ | CAST _ | GENERIC _ ->
       Frama_Clang_option.fatal
         "Cannot take the address of a non-lval expression"