diff --git a/src/main/java/io/reactivex/Flowable.java b/src/main/java/io/reactivex/Flowable.java
index c49689484c..aee5d536d2 100644
--- a/src/main/java/io/reactivex/Flowable.java
+++ b/src/main/java/io/reactivex/Flowable.java
@@ -150,6 +150,9 @@ public static int bufferSize() {
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided array of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -191,6 +194,9 @@ public static Flowable combineLatest(Publisher extends T>[] sources,
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If there are no source Publishers provided, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -232,6 +238,9 @@ public static Flowable combineLatest(Function super Object[], ? exte
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided array of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -281,6 +290,9 @@ public static Flowable combineLatest(Publisher extends T>[] sources,
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided iterable of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -323,6 +335,9 @@ public static Flowable combineLatest(Iterable extends Publisher ex
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided iterable of source Publishers is empty, the resulting sequence completes immediately without emitting any items and
+ * without any calls to combiner function.
*
*
* - Backpressure:
@@ -370,6 +385,9 @@ public static Flowable combineLatest(Iterable extends Publisher ex
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided array of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -413,6 +431,9 @@ public static Flowable combineLatestDelayError(Publisher extends T>[
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If there are no source Publishers provided, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -456,6 +477,9 @@ public static Flowable combineLatestDelayError(Function super Object
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If there are no source Publishers provided, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -501,6 +525,9 @@ public static Flowable combineLatestDelayError(Function super Object
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided array of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -552,6 +579,9 @@ public static Flowable combineLatestDelayError(Publisher extends T>[
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided iterable of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
@@ -595,6 +625,9 @@ public static Flowable combineLatestDelayError(Iterable extends Publ
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided iterable of source Publishers is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Backpressure:
diff --git a/src/main/java/io/reactivex/Observable.java b/src/main/java/io/reactivex/Observable.java
index 191c2a18da..b575a9acb7 100644
--- a/src/main/java/io/reactivex/Observable.java
+++ b/src/main/java/io/reactivex/Observable.java
@@ -178,6 +178,10 @@ public static int bufferSize() {
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If there are no ObservableSources provided, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -217,6 +221,10 @@ public static Observable combineLatest(Function super Object[], ? ex
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided iterable of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -255,6 +263,10 @@ public static Observable combineLatest(Iterable extends ObservableSo
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided iterable of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -301,6 +313,10 @@ public static Observable combineLatest(Iterable extends ObservableSo
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided array of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -339,6 +355,10 @@ public static Observable combineLatest(ObservableSource extends T>[]
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided array of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -829,6 +849,9 @@ public static Observable combineLates
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If provided array of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Scheduler:
@@ -869,6 +892,9 @@ public static Observable combineLatestDelayError(ObservableSource ex
* If any of the sources never produces an item but only terminates (normally or with an error), the
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
+ *
+ * If there are no ObservableSources provided, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
*
*
* - Scheduler:
@@ -910,6 +936,10 @@ public static Observable combineLatestDelayError(Function super Obje
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided array of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -958,6 +988,10 @@ public static Observable combineLatestDelayError(ObservableSource ex
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided iterable of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler:
@@ -997,6 +1031,10 @@ public static Observable combineLatestDelayError(Iterable extends Ob
* resulting sequence terminates immediately (normally or with all the errors accumulated till that point).
* If that input source is also synchronous, other sources after it will not be subscribed to.
*
+ * If provided iterable of ObservableSources is empty, the resulting sequence completes immediately without emitting
+ * any items and without any calls to combiner function.
+ *
+ *
*
*
* - Scheduler: