Root/target/linux/generic/patches-3.3/531-debloat_lzma.patch

1--- a/include/linux/lzma/LzmaDec.h
2+++ b/include/linux/lzma/LzmaDec.h
3@@ -31,14 +31,6 @@ typedef struct _CLzmaProps
4   UInt32 dicSize;
5 } CLzmaProps;
6 
7-/* LzmaProps_Decode - decodes properties
8-Returns:
9- SZ_OK
10- SZ_ERROR_UNSUPPORTED - Unsupported properties
11-*/
12-
13-SRes LzmaProps_Decode(CLzmaProps *p, const Byte *data, unsigned size);
14-
15 
16 /* ---------- LZMA Decoder state ---------- */
17 
18@@ -70,8 +62,6 @@ typedef struct
19 
20 #define LzmaDec_Construct(p) { (p)->dic = 0; (p)->probs = 0; }
21 
22-void LzmaDec_Init(CLzmaDec *p);
23-
24 /* There are two types of LZMA streams:
25      0) Stream with end mark. That end mark adds about 6 bytes to compressed size.
26      1) Stream without end mark. You must know exact uncompressed size to decompress such stream. */
27@@ -108,97 +98,6 @@ typedef enum
28 
29 /* ELzmaStatus is used only as output value for function call */
30 
31-
32-/* ---------- Interfaces ---------- */
33-
34-/* There are 3 levels of interfaces:
35- 1) Dictionary Interface
36- 2) Buffer Interface
37- 3) One Call Interface
38- You can select any of these interfaces, but don't mix functions from different
39- groups for same object. */
40-
41-
42-/* There are two variants to allocate state for Dictionary Interface:
43- 1) LzmaDec_Allocate / LzmaDec_Free
44- 2) LzmaDec_AllocateProbs / LzmaDec_FreeProbs
45- You can use variant 2, if you set dictionary buffer manually.
46- For Buffer Interface you must always use variant 1.
47-
48-LzmaDec_Allocate* can return:
49- SZ_OK
50- SZ_ERROR_MEM - Memory allocation error
51- SZ_ERROR_UNSUPPORTED - Unsupported properties
52-*/
53-
54-SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc);
55-void LzmaDec_FreeProbs(CLzmaDec *p, ISzAlloc *alloc);
56-
57-SRes LzmaDec_Allocate(CLzmaDec *state, const Byte *prop, unsigned propsSize, ISzAlloc *alloc);
58-void LzmaDec_Free(CLzmaDec *state, ISzAlloc *alloc);
59-
60-/* ---------- Dictionary Interface ---------- */
61-
62-/* You can use it, if you want to eliminate the overhead for data copying from
63- dictionary to some other external buffer.
64- You must work with CLzmaDec variables directly in this interface.
65-
66- STEPS:
67- LzmaDec_Constr()
68- LzmaDec_Allocate()
69- for (each new stream)
70- {
71- LzmaDec_Init()
72- while (it needs more decompression)
73- {
74- LzmaDec_DecodeToDic()
75- use data from CLzmaDec::dic and update CLzmaDec::dicPos
76- }
77- }
78- LzmaDec_Free()
79-*/
80-
81-/* LzmaDec_DecodeToDic
82-
83- The decoding to internal dictionary buffer (CLzmaDec::dic).
84- You must manually update CLzmaDec::dicPos, if it reaches CLzmaDec::dicBufSize !!!
85-
86-finishMode:
87- It has meaning only if the decoding reaches output limit (dicLimit).
88- LZMA_FINISH_ANY - Decode just dicLimit bytes.
89- LZMA_FINISH_END - Stream must be finished after dicLimit.
90-
91-Returns:
92- SZ_OK
93- status:
94- LZMA_STATUS_FINISHED_WITH_MARK
95- LZMA_STATUS_NOT_FINISHED
96- LZMA_STATUS_NEEDS_MORE_INPUT
97- LZMA_STATUS_MAYBE_FINISHED_WITHOUT_MARK
98- SZ_ERROR_DATA - Data error
99-*/
100-
101-SRes LzmaDec_DecodeToDic(CLzmaDec *p, SizeT dicLimit,
102- const Byte *src, SizeT *srcLen, ELzmaFinishMode finishMode, ELzmaStatus *status);
103-
104-
105-/* ---------- Buffer Interface ---------- */
106-
107-/* It's zlib-like interface.
108- See LzmaDec_DecodeToDic description for information about STEPS and return results,
109- but you must use LzmaDec_DecodeToBuf instead of LzmaDec_DecodeToDic and you don't need
110- to work with CLzmaDec variables manually.
111-
112-finishMode:
113- It has meaning only if the decoding reaches output limit (*destLen).
114- LZMA_FINISH_ANY - Decode just destLen bytes.
115- LZMA_FINISH_END - Stream must be finished after (*destLen).
116-*/
117-
118-SRes LzmaDec_DecodeToBuf(CLzmaDec *p, Byte *dest, SizeT *destLen,
119- const Byte *src, SizeT *srcLen, ELzmaFinishMode finishMode, ELzmaStatus *status);
120-
121-
122 /* ---------- One Call Interface ---------- */
123 
124 /* LzmaDecode
125--- a/lib/lzma/LzmaDec.c
126+++ b/lib/lzma/LzmaDec.c
127@@ -682,7 +682,7 @@ static void LzmaDec_InitRc(CLzmaDec *p,
128   p->needFlush = 0;
129 }
130 
131-void LzmaDec_InitDicAndState(CLzmaDec *p, Bool initDic, Bool initState)
132+static void LzmaDec_InitDicAndState(CLzmaDec *p, Bool initDic, Bool initState)
133 {
134   p->needFlush = 1;
135   p->remainLen = 0;
136@@ -698,7 +698,7 @@ void LzmaDec_InitDicAndState(CLzmaDec *p
137     p->needInitState = 1;
138 }
139 
140-void LzmaDec_Init(CLzmaDec *p)
141+static void LzmaDec_Init(CLzmaDec *p)
142 {
143   p->dicPos = 0;
144   LzmaDec_InitDicAndState(p, True, True);
145@@ -716,7 +716,7 @@ static void LzmaDec_InitStateReal(CLzmaD
146   p->needInitState = 0;
147 }
148 
149-SRes LzmaDec_DecodeToDic(CLzmaDec *p, SizeT dicLimit, const Byte *src, SizeT *srcLen,
150+static SRes LzmaDec_DecodeToDic(CLzmaDec *p, SizeT dicLimit, const Byte *src, SizeT *srcLen,
151     ELzmaFinishMode finishMode, ELzmaStatus *status)
152 {
153   SizeT inSize = *srcLen;
154@@ -837,7 +837,7 @@ SRes LzmaDec_DecodeToDic(CLzmaDec *p, Si
155   return (p->code == 0) ? SZ_OK : SZ_ERROR_DATA;
156 }
157 
158-SRes LzmaDec_DecodeToBuf(CLzmaDec *p, Byte *dest, SizeT *destLen, const Byte *src, SizeT *srcLen, ELzmaFinishMode finishMode, ELzmaStatus *status)
159+static __maybe_unused SRes LzmaDec_DecodeToBuf(CLzmaDec *p, Byte *dest, SizeT *destLen, const Byte *src, SizeT *srcLen, ELzmaFinishMode finishMode, ELzmaStatus *status)
160 {
161   SizeT outSize = *destLen;
162   SizeT inSize = *srcLen;
163@@ -877,7 +877,7 @@ SRes LzmaDec_DecodeToBuf(CLzmaDec *p, By
164   }
165 }
166 
167-void LzmaDec_FreeProbs(CLzmaDec *p, ISzAlloc *alloc)
168+static void LzmaDec_FreeProbs(CLzmaDec *p, ISzAlloc *alloc)
169 {
170   alloc->Free(alloc, p->probs);
171   p->probs = 0;
172@@ -889,13 +889,13 @@ static void LzmaDec_FreeDict(CLzmaDec *p
173   p->dic = 0;
174 }
175 
176-void LzmaDec_Free(CLzmaDec *p, ISzAlloc *alloc)
177+static void __maybe_unused LzmaDec_Free(CLzmaDec *p, ISzAlloc *alloc)
178 {
179   LzmaDec_FreeProbs(p, alloc);
180   LzmaDec_FreeDict(p, alloc);
181 }
182 
183-SRes LzmaProps_Decode(CLzmaProps *p, const Byte *data, unsigned size)
184+static SRes LzmaProps_Decode(CLzmaProps *p, const Byte *data, unsigned size)
185 {
186   UInt32 dicSize;
187   Byte d;
188@@ -935,7 +935,7 @@ static SRes LzmaDec_AllocateProbs2(CLzma
189   return SZ_OK;
190 }
191 
192-SRes LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
193+static SRes __maybe_unused LzmaDec_AllocateProbs(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
194 {
195   CLzmaProps propNew;
196   RINOK(LzmaProps_Decode(&propNew, props, propsSize));
197@@ -944,7 +944,7 @@ SRes LzmaDec_AllocateProbs(CLzmaDec *p,
198   return SZ_OK;
199 }
200 
201-SRes LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
202+static SRes __maybe_unused LzmaDec_Allocate(CLzmaDec *p, const Byte *props, unsigned propsSize, ISzAlloc *alloc)
203 {
204   CLzmaProps propNew;
205   SizeT dicBufSize;
206--- a/include/linux/lzma/LzmaEnc.h
207+++ b/include/linux/lzma/LzmaEnc.h
208@@ -31,9 +31,6 @@ typedef struct _CLzmaEncProps
209 } CLzmaEncProps;
210 
211 void LzmaEncProps_Init(CLzmaEncProps *p);
212-void LzmaEncProps_Normalize(CLzmaEncProps *p);
213-UInt32 LzmaEncProps_GetDictSize(const CLzmaEncProps *props2);
214-
215 
216 /* ---------- CLzmaEncHandle Interface ---------- */
217 
218@@ -53,26 +50,9 @@ CLzmaEncHandle LzmaEnc_Create(ISzAlloc *
219 void LzmaEnc_Destroy(CLzmaEncHandle p, ISzAlloc *alloc, ISzAlloc *allocBig);
220 SRes LzmaEnc_SetProps(CLzmaEncHandle p, const CLzmaEncProps *props);
221 SRes LzmaEnc_WriteProperties(CLzmaEncHandle p, Byte *properties, SizeT *size);
222-SRes LzmaEnc_Encode(CLzmaEncHandle p, ISeqOutStream *outStream, ISeqInStream *inStream,
223- ICompressProgress *progress, ISzAlloc *alloc, ISzAlloc *allocBig);
224 SRes LzmaEnc_MemEncode(CLzmaEncHandle p, Byte *dest, SizeT *destLen, const Byte *src, SizeT srcLen,
225     int writeEndMark, ICompressProgress *progress, ISzAlloc *alloc, ISzAlloc *allocBig);
226 
227-/* ---------- One Call Interface ---------- */
228-
229-/* LzmaEncode
230-Return code:
231- SZ_OK - OK
232- SZ_ERROR_MEM - Memory allocation error
233- SZ_ERROR_PARAM - Incorrect paramater
234- SZ_ERROR_OUTPUT_EOF - output buffer overflow
235- SZ_ERROR_THREAD - errors in multithreading functions (only for Mt version)
236-*/
237-
238-SRes LzmaEncode(Byte *dest, SizeT *destLen, const Byte *src, SizeT srcLen,
239- const CLzmaEncProps *props, Byte *propsEncoded, SizeT *propsSize, int writeEndMark,
240- ICompressProgress *progress, ISzAlloc *alloc, ISzAlloc *allocBig);
241-
242 #ifdef __cplusplus
243 }
244 #endif
245--- a/lib/lzma/LzmaEnc.c
246+++ b/lib/lzma/LzmaEnc.c
247@@ -53,7 +53,7 @@ void LzmaEncProps_Init(CLzmaEncProps *p)
248   p->writeEndMark = 0;
249 }
250 
251-void LzmaEncProps_Normalize(CLzmaEncProps *p)
252+static void LzmaEncProps_Normalize(CLzmaEncProps *p)
253 {
254   int level = p->level;
255   if (level < 0) level = 5;
256@@ -76,7 +76,7 @@ void LzmaEncProps_Normalize(CLzmaEncProp
257       #endif
258 }
259 
260-UInt32 LzmaEncProps_GetDictSize(const CLzmaEncProps *props2)
261+static UInt32 __maybe_unused LzmaEncProps_GetDictSize(const CLzmaEncProps *props2)
262 {
263   CLzmaEncProps props = *props2;
264   LzmaEncProps_Normalize(&props);
265@@ -93,7 +93,7 @@ UInt32 LzmaEncProps_GetDictSize(const CL
266 
267 #define BSR2_RET(pos, res) { unsigned long i; _BitScanReverse(&i, (pos)); res = (i + i) + ((pos >> (i - 1)) & 1); }
268 
269-UInt32 GetPosSlot1(UInt32 pos)
270+static UInt32 GetPosSlot1(UInt32 pos)
271 {
272   UInt32 res;
273   BSR2_RET(pos, res);
274@@ -107,7 +107,7 @@ UInt32 GetPosSlot1(UInt32 pos)
275 #define kNumLogBits (9 + (int)sizeof(size_t) / 2)
276 #define kDicLogSizeMaxCompress ((kNumLogBits - 1) * 2 + 7)
277 
278-void LzmaEnc_FastPosInit(Byte *g_FastPos)
279+static void LzmaEnc_FastPosInit(Byte *g_FastPos)
280 {
281   int c = 2, slotFast;
282   g_FastPos[0] = 0;
283@@ -339,7 +339,7 @@ typedef struct
284   CSaveState saveState;
285 } CLzmaEnc;
286 
287-void LzmaEnc_SaveState(CLzmaEncHandle pp)
288+static void __maybe_unused LzmaEnc_SaveState(CLzmaEncHandle pp)
289 {
290   CLzmaEnc *p = (CLzmaEnc *)pp;
291   CSaveState *dest = &p->saveState;
292@@ -365,7 +365,7 @@ void LzmaEnc_SaveState(CLzmaEncHandle pp
293   memcpy(dest->litProbs, p->litProbs, (0x300 << p->lclp) * sizeof(CLzmaProb));
294 }
295 
296-void LzmaEnc_RestoreState(CLzmaEncHandle pp)
297+static void __maybe_unused LzmaEnc_RestoreState(CLzmaEncHandle pp)
298 {
299   CLzmaEnc *dest = (CLzmaEnc *)pp;
300   const CSaveState *p = &dest->saveState;
301@@ -600,7 +600,7 @@ static void LitEnc_EncodeMatched(CRangeE
302   while (symbol < 0x10000);
303 }
304 
305-void LzmaEnc_InitPriceTables(UInt32 *ProbPrices)
306+static void LzmaEnc_InitPriceTables(UInt32 *ProbPrices)
307 {
308   UInt32 i;
309   for (i = (1 << kNumMoveReducingBits) / 2; i < kBitModelTotal; i += (1 << kNumMoveReducingBits))
310@@ -1676,7 +1676,7 @@ static void FillDistancesPrices(CLzmaEnc
311   p->matchPriceCount = 0;
312 }
313 
314-void LzmaEnc_Construct(CLzmaEnc *p)
315+static void LzmaEnc_Construct(CLzmaEnc *p)
316 {
317   RangeEnc_Construct(&p->rc);
318   MatchFinder_Construct(&p->matchFinderBase);
319@@ -1709,7 +1709,7 @@ CLzmaEncHandle LzmaEnc_Create(ISzAlloc *
320   return p;
321 }
322 
323-void LzmaEnc_FreeLits(CLzmaEnc *p, ISzAlloc *alloc)
324+static void LzmaEnc_FreeLits(CLzmaEnc *p, ISzAlloc *alloc)
325 {
326   alloc->Free(alloc, p->litProbs);
327   alloc->Free(alloc, p->saveState.litProbs);
328@@ -2074,7 +2074,7 @@ SRes LzmaEnc_MemPrepare(CLzmaEncHandle p
329   return LzmaEnc_AllocAndInit(p, keepWindowSize, alloc, allocBig);
330 }
331 
332-void LzmaEnc_Finish(CLzmaEncHandle pp)
333+static void LzmaEnc_Finish(CLzmaEncHandle pp)
334 {
335   #ifndef _7ZIP_ST
336   CLzmaEnc *p = (CLzmaEnc *)pp;
337@@ -2108,7 +2108,7 @@ static size_t MyWrite(void *pp, const vo
338 }
339 
340 
341-UInt32 LzmaEnc_GetNumAvailableBytes(CLzmaEncHandle pp)
342+static UInt32 __maybe_unused LzmaEnc_GetNumAvailableBytes(CLzmaEncHandle pp)
343 {
344   const CLzmaEnc *p = (CLzmaEnc *)pp;
345   return p->matchFinder.GetNumAvailableBytes(p->matchFinderObj);
346@@ -2120,7 +2120,7 @@ const Byte *LzmaEnc_GetCurBuf(CLzmaEncHa
347   return p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - p->additionalOffset;
348 }
349 
350-SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, Bool reInit,
351+static SRes __maybe_unused LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, Bool reInit,
352     Byte *dest, size_t *destLen, UInt32 desiredPackSize, UInt32 *unpackSize)
353 {
354   CLzmaEnc *p = (CLzmaEnc *)pp;
355@@ -2248,7 +2248,7 @@ SRes LzmaEnc_MemEncode(CLzmaEncHandle pp
356   return res;
357 }
358 
359-SRes LzmaEncode(Byte *dest, SizeT *destLen, const Byte *src, SizeT srcLen,
360+static __maybe_unused SRes LzmaEncode(Byte *dest, SizeT *destLen, const Byte *src, SizeT srcLen,
361     const CLzmaEncProps *props, Byte *propsEncoded, SizeT *propsSize, int writeEndMark,
362     ICompressProgress *progress, ISzAlloc *alloc, ISzAlloc *allocBig)
363 {
364--- a/include/linux/lzma/LzFind.h
365+++ b/include/linux/lzma/LzFind.h
366@@ -55,11 +55,6 @@ typedef struct _CMatchFinder
367 
368 #define Inline_MatchFinder_GetNumAvailableBytes(p) ((p)->streamPos - (p)->pos)
369 
370-int MatchFinder_NeedMove(CMatchFinder *p);
371-Byte *MatchFinder_GetPointerToCurrentPos(CMatchFinder *p);
372-void MatchFinder_MoveBlock(CMatchFinder *p);
373-void MatchFinder_ReadIfRequired(CMatchFinder *p);
374-
375 void MatchFinder_Construct(CMatchFinder *p);
376 
377 /* Conditions:
378@@ -70,12 +65,6 @@ int MatchFinder_Create(CMatchFinder *p,
379     UInt32 keepAddBufferBefore, UInt32 matchMaxLen, UInt32 keepAddBufferAfter,
380     ISzAlloc *alloc);
381 void MatchFinder_Free(CMatchFinder *p, ISzAlloc *alloc);
382-void MatchFinder_Normalize3(UInt32 subValue, CLzRef *items, UInt32 numItems);
383-void MatchFinder_ReduceOffsets(CMatchFinder *p, UInt32 subValue);
384-
385-UInt32 * GetMatchesSpec1(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *buffer, CLzRef *son,
386- UInt32 _cyclicBufferPos, UInt32 _cyclicBufferSize, UInt32 _cutValue,
387- UInt32 *distances, UInt32 maxLen);
388 
389 /*
390 Conditions:
391@@ -102,12 +91,6 @@ typedef struct _IMatchFinder
392 
393 void MatchFinder_CreateVTable(CMatchFinder *p, IMatchFinder *vTable);
394 
395-void MatchFinder_Init(CMatchFinder *p);
396-UInt32 Bt3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances);
397-UInt32 Hc3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances);
398-void Bt3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num);
399-void Hc3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num);
400-
401 #ifdef __cplusplus
402 }
403 #endif
404--- a/lib/lzma/LzFind.c
405+++ b/lib/lzma/LzFind.c
406@@ -42,12 +42,12 @@ static int LzInWindow_Create(CMatchFinde
407   return (p->bufferBase != 0);
408 }
409 
410-Byte *MatchFinder_GetPointerToCurrentPos(CMatchFinder *p) { return p->buffer; }
411-Byte MatchFinder_GetIndexByte(CMatchFinder *p, Int32 index) { return p->buffer[index]; }
412+static Byte *MatchFinder_GetPointerToCurrentPos(CMatchFinder *p) { return p->buffer; }
413+static Byte MatchFinder_GetIndexByte(CMatchFinder *p, Int32 index) { return p->buffer[index]; }
414 
415-UInt32 MatchFinder_GetNumAvailableBytes(CMatchFinder *p) { return p->streamPos - p->pos; }
416+static UInt32 MatchFinder_GetNumAvailableBytes(CMatchFinder *p) { return p->streamPos - p->pos; }
417 
418-void MatchFinder_ReduceOffsets(CMatchFinder *p, UInt32 subValue)
419+static void MatchFinder_ReduceOffsets(CMatchFinder *p, UInt32 subValue)
420 {
421   p->posLimit -= subValue;
422   p->pos -= subValue;
423@@ -268,7 +268,7 @@ static void MatchFinder_SetLimits(CMatch
424   p->posLimit = p->pos + limit;
425 }
426 
427-void MatchFinder_Init(CMatchFinder *p)
428+static void MatchFinder_Init(CMatchFinder *p)
429 {
430   UInt32 i;
431   for (i = 0; i < p->hashSizeSum; i++)
432@@ -287,7 +287,7 @@ static UInt32 MatchFinder_GetSubValue(CM
433   return (p->pos - p->historySize - 1) & kNormalizeMask;
434 }
435 
436-void MatchFinder_Normalize3(UInt32 subValue, CLzRef *items, UInt32 numItems)
437+static void MatchFinder_Normalize3(UInt32 subValue, CLzRef *items, UInt32 numItems)
438 {
439   UInt32 i;
440   for (i = 0; i < numItems; i++)
441@@ -350,7 +350,7 @@ static UInt32 * Hc_GetMatchesSpec(UInt32
442   }
443 }
444 
445-UInt32 * GetMatchesSpec1(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *cur, CLzRef *son,
446+static UInt32 * GetMatchesSpec1(UInt32 lenLimit, UInt32 curMatch, UInt32 pos, const Byte *cur, CLzRef *son,
447     UInt32 _cyclicBufferPos, UInt32 _cyclicBufferSize, UInt32 cutValue,
448     UInt32 *distances, UInt32 maxLen)
449 {
450@@ -492,7 +492,7 @@ static UInt32 Bt2_MatchFinder_GetMatches
451   GET_MATCHES_FOOTER(offset, 1)
452 }
453 
454-UInt32 Bt3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances)
455+static __maybe_unused UInt32 Bt3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances)
456 {
457   UInt32 offset;
458   GET_MATCHES_HEADER(3)
459@@ -632,7 +632,7 @@ static UInt32 Hc4_MatchFinder_GetMatches
460   MOVE_POS_RET
461 }
462 
463-UInt32 Hc3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances)
464+static __maybe_unused UInt32 Hc3Zip_MatchFinder_GetMatches(CMatchFinder *p, UInt32 *distances)
465 {
466   UInt32 offset;
467   GET_MATCHES_HEADER(3)
468@@ -657,7 +657,7 @@ static void Bt2_MatchFinder_Skip(CMatchF
469   while (--num != 0);
470 }
471 
472-void Bt3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
473+static __maybe_unused void Bt3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
474 {
475   do
476   {
477@@ -718,7 +718,7 @@ static void Hc4_MatchFinder_Skip(CMatchF
478   while (--num != 0);
479 }
480 
481-void Hc3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
482+static __maybe_unused void Hc3Zip_MatchFinder_Skip(CMatchFinder *p, UInt32 num)
483 {
484   do
485   {
486

Archive Download this file



interactive