Skip to content

gcc warning line number mismatch #105

Open
@neelabhg

Description

@neelabhg

When compiling the following program (from https://computing.llnl.gov/tutorials/pthreads/samples/hello.c):

/******************************************************************************
* FILE: hello.c
* DESCRIPTION:
*   A "hello world" Pthreads program.  Demonstrates thread creation and
*   termination.
* AUTHOR: Blaise Barney
* LAST REVISED: 08/09/11
******************************************************************************/
#include <pthread.h>
#include <stdio.h>
#include <stdlib.h>
#define NUM_THREADS 5

void *PrintHello(void *threadid)
{
   long tid;
   tid = (long)threadid;
   printf("Hello World! It's me, thread #%ld!\n", tid);
   pthread_exit(NULL);
}

int main(int argc, char *argv[])
{
   pthread_t threads[NUM_THREADS];
   int rc;
   long t;
   for(t=0;t<NUM_THREADS;t++){
     printf("In main: creating thread %ld\n", t);
     rc = pthread_create(&threads[t], NULL, PrintHello, (void *)t);
     if (rc){
       printf("ERROR; return code from pthread_create() is %d\n", rc);
       exit(-1);
       }
     }

   /* Last thing that main() should do */
   pthread_exit(NULL);
}

gcc outputs this:

program.c: In function 'main':
program.c:43:15: warning: unused parameter 'argc' [-Wunused-parameter]
  int main(int argc, char *argv[])
               ^
program.c:43:27: warning: unused parameter 'argv' [-Wunused-parameter]
  int main(int argc, char *argv[])
                           ^

The last line of the program is line 38, but the warning appears on line 43.

Why? Even if this has to do with gcc, it still affects our user experience, and so I thought this needed to be brought to attention.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions