Commit b8cd3996 by Jason Merrill Committed by Jason Merrill

* constexpr.c (cx_check_missing_mem_inits): Clarify error message.

From-SVN: r217616
parent f5f08264
2014-11-15 Jason Merrill <jason@redhat.com>
* constexpr.c (cx_check_missing_mem_inits): Clarify error message.
2014-11-14 Paolo Carlini <paolo.carlini@oracle.com> 2014-11-14 Paolo Carlini <paolo.carlini@oracle.com>
* semantics.c (end_maybe_infinite_loop): Use fold_non_dependent_expr. * semantics.c (end_maybe_infinite_loop): Use fold_non_dependent_expr.
......
...@@ -716,8 +716,9 @@ cx_check_missing_mem_inits (tree fun, tree body, bool complain) ...@@ -716,8 +716,9 @@ cx_check_missing_mem_inits (tree fun, tree body, bool complain)
} }
if (!complain) if (!complain)
return true; return true;
error ("uninitialized member %qD in %<constexpr%> constructor", error ("member %qD must be initialized by mem-initializer "
field); "in %<constexpr%> constructor", field);
inform (DECL_SOURCE_LOCATION (field), "declared here");
bad = true; bad = true;
} }
if (field == NULL_TREE) if (field == NULL_TREE)
......
...@@ -3,5 +3,5 @@ ...@@ -3,5 +3,5 @@
struct A struct A
{ {
int i; int i;
constexpr A() { } // { dg-error "uninitialized member .A::i" } constexpr A() { } // { dg-error "A::i" }
}; };
...@@ -21,5 +21,5 @@ struct A1 ...@@ -21,5 +21,5 @@ struct A1
struct B1 struct B1
{ {
A1 a1; A1 a1;
constexpr B1() {} // { dg-error "uninitialized member" } constexpr B1() {} // { dg-error "B1::a1" }
}; };
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
struct A struct A
{ {
int i; int i;
constexpr A(int _i) { i = _i; } // { dg-error "empty body|uninitialized member" } constexpr A(int _i) { i = _i; } // { dg-error "empty body|A::i" }
}; };
template <class T> template <class T>
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
template <class T> struct A template <class T> struct A
{ {
T t; T t;
constexpr A() { } // { dg-error "uninitialized" } constexpr A() { } // { dg-error "::t" }
}; };
int main() int main()
......
...@@ -15,4 +15,4 @@ struct B ...@@ -15,4 +15,4 @@ struct B
constexpr B b; // { dg-error "B::B" } constexpr B b; // { dg-error "B::B" }
// { dg-prune-output "uninitialized member" } // { dg-prune-output "B::a1" }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment