}
#endif // _di_f_thread_mutex_attribute_delete_
-#ifndef _di_f_thread_mutex_attribute_priority_ceiling_get_
+#if defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_attribute_priority_ceiling_get_)
+ f_status_t f_thread_mutex_attribute_priority_ceiling_get(const f_thread_mutex_attribute_t * const attribute, int * const ceiling) {
+ #ifndef _di_level_0_parameter_checking_
+ if (!attribute) return F_status_set_error(F_parameter);
+ if (!ceiling) return F_status_set_error(F_parameter);
+ #endif // _di_level_0_parameter_checking_
+
+ return F_status_set_error(F_implemented_not);
+ }
+#elif !defined(_di_f_thread_mutex_attribute_priority_ceiling_get_)
f_status_t f_thread_mutex_attribute_priority_ceiling_get(const f_thread_mutex_attribute_t * const attribute, int * const ceiling) {
#ifndef _di_level_0_parameter_checking_
if (!attribute) return F_status_set_error(F_parameter);
}
#endif // _di_f_thread_mutex_attribute_priority_ceiling_get_
-#ifndef _di_f_thread_mutex_attribute_priority_ceiling_set_
+#if defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_attribute_priority_ceiling_set_)
+ f_status_t f_thread_mutex_attribute_priority_ceiling_set(const int ceiling, f_thread_mutex_attribute_t * const attribute) {
+ #ifndef _di_level_0_parameter_checking_
+ if (!attribute) return F_status_set_error(F_parameter);
+ #endif // _di_level_0_parameter_checking_
+
+ return F_status_set_error(F_implemented_not);
+ }
+#elif !defined(_di_f_thread_mutex_attribute_priority_ceiling_set_)
f_status_t f_thread_mutex_attribute_priority_ceiling_set(const int ceiling, f_thread_mutex_attribute_t * const attribute) {
#ifndef _di_level_0_parameter_checking_
if (!attribute) return F_status_set_error(F_parameter);
}
#endif // _di_f_thread_mutex_attribute_priority_ceiling_set_
-#ifndef _di_f_thread_mutex_attribute_protocol_get_
+#if defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_attribute_protocol_get_)
+ f_status_t f_thread_mutex_attribute_protocol_get(const f_thread_mutex_attribute_t * const attribute, int * const protocol) {
+ #ifndef _di_level_0_parameter_checking_
+ if (!attribute) return F_status_set_error(F_parameter);
+ if (!protocol) return F_status_set_error(F_parameter);
+ #endif // _di_level_0_parameter_checking_
+
+ return F_status_set_error(F_implemented_not);
+ }
+#elif !defined(_di_f_thread_mutex_attribute_protocol_get_)
f_status_t f_thread_mutex_attribute_protocol_get(const f_thread_mutex_attribute_t * const attribute, int * const protocol) {
#ifndef _di_level_0_parameter_checking_
if (!attribute) return F_status_set_error(F_parameter);
}
#endif // _di_f_thread_mutex_lock_try_
-#ifndef _di_f_thread_mutex_priority_ceiling_get_
+#if defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_priority_ceiling_get_)
+ f_status_t f_thread_mutex_priority_ceiling_get(f_thread_mutex_t * const mutex, int * const ceiling) {
+ #ifndef _di_level_0_parameter_checking_
+ if (!mutex) return F_status_set_error(F_parameter);
+ if (!ceiling) return F_status_set_error(F_parameter);
+ #endif // _di_level_0_parameter_checking_
+
+ return F_status_set_error(F_implemented_not);
+ }
+#elif !defined(_di_f_thread_mutex_priority_ceiling_get_)
f_status_t f_thread_mutex_priority_ceiling_get(f_thread_mutex_t * const mutex, int * const ceiling) {
#ifndef _di_level_0_parameter_checking_
if (!mutex) return F_status_set_error(F_parameter);
return F_none;
}
-#endif // _di_f_thread_mutex_priority_ceiling_get_
+#endif // defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_priority_ceiling_get_)
-#ifndef _di_f_thread_mutex_priority_ceiling_set_
+#if defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_priority_ceiling_set_)
+ f_status_t f_thread_mutex_priority_ceiling_set(const int ceiling, f_thread_mutex_t * const mutex, int * const previous) {
+ #ifndef _di_level_0_parameter_checking_
+ if (!mutex) return F_status_set_error(F_parameter);
+ #endif // _di_level_0_parameter_checking_
+
+ return F_status_set_error(F_implemented_not);
+ }
+#elif !defined(_di_f_thread_mutex_priority_ceiling_set_)
f_status_t f_thread_mutex_priority_ceiling_set(const int ceiling, f_thread_mutex_t * const mutex, int * const previous) {
#ifndef _di_level_0_parameter_checking_
if (!mutex) return F_status_set_error(F_parameter);
return F_none;
}
-#endif // _di_f_thread_mutex_priority_ceiling_set_
+#endif // defined(_pthread_mutex_prioceiling_unsupported_) && !defined(_di_f_thread_mutex_priority_ceiling_set_)
#ifndef _di_f_thread_mutex_unlock_
f_status_t f_thread_mutex_unlock(f_thread_mutex_t * const mutex) {